:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#182d47;background:#fff;color-scheme:light}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled,select:disabled{opacity:.55;cursor:wait}[hidden]{display:none!important}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.viewer-nav{background:#1e293b;color:white;min-height:54px}.viewer-nav-inner{max-width:1520px;margin:auto;display:flex;align-items:center;gap:20px;min-height:54px;padding:0 24px}.viewer-home{color:inherit;background:none;border:0;font-size:22px;padding:10px 8px}.viewer-board-picker{max-width:440px;min-width:160px}.viewer-board-picker select{color:white;background:#1e293b;border:0;font-size:18px;width:100%;padding:10px 24px 10px 0;text-overflow:ellipsis;cursor:pointer}.viewer-board-picker select option{background:white;color:#182d47}.viewer-event-name{margin-left:auto;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewer-readonly{font-size:11px;white-space:nowrap;color:#d2dbe8;display:flex;gap:6px;align-items:center}
.watch-shell{max-width:1520px;margin:auto;padding:12px 24px 28px}.card{border:1px solid #dce2e9;background:white;border-radius:8px;padding:18px;margin-bottom:12px}.code-panel{max-width:560px;margin:8px 0 12px}.code-panel summary{font-size:14px;font-weight:600;cursor:pointer}.code-panel:not([open]){padding:9px 12px}.code-panel form{margin-top:14px}.code-panel label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}.code-entry{display:flex;gap:10px}.code-entry input{width:100%;min-width:0;text-transform:uppercase;letter-spacing:.1em;padding:10px;border:1px solid #b7c2d0;border-radius:4px}.code-entry button{background:#1e293b;color:white;white-space:nowrap;border:0;border-radius:4px;padding:10px 16px}.viewer-status{font-size:11px;color:#687587;margin:4px 0;min-height:15px}.viewer-status.error,#status.error{color:#ad2e29}.viewer-page-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.viewer-page-heading h1{font-size:26px;font-weight:600;margin:6px 0}.viewer-round-picker{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:12px}.viewer-round-picker select{max-width:280px;padding:5px 8px;border:1px solid #c4cbd4;border-radius:3px;background:white;color:#182d47}.viewer-board{padding:0;background:white;overflow:hidden}#leaderboard-page{display:block;width:100%;min-height:450px;border:0;background:white}
.viewer-actions{border-top:1px solid #cbd0d7;padding-top:6px;margin-top:8px}.viewer-actions h2{font-size:27px;font-weight:500;line-height:1.2;margin:0 0 10px}.viewer-action-grid{display:flex;flex-wrap:wrap;gap:14px 30px;padding:0 16px}.viewer-action,.viewer-utility-actions button,.viewer-utility-actions a{display:inline-flex;align-items:center;gap:12px;border:1px solid #233b59;border-radius:4px;background:white;color:#182d47;min-height:32px;padding:3px 12px;font-size:12px;text-decoration:none}.viewer-action{min-width:188px;text-align:left}.viewer-action .fa{font-size:23px;min-width:22px;text-align:center}.viewer-action:hover,.viewer-utility-actions button:hover,.viewer-utility-actions a:hover{background:#eef2f7}.viewer-action.active{background:#edf2f8;box-shadow:inset 0 -2px #233b59}.viewer-utility-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:14px 16px 0}.viewer-utility-actions .fa{font-size:15px}#page-controls{display:flex;gap:8px;flex-wrap:wrap}
.result-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px;border-top:1px solid #e3e6eb}.result-row:nth-child(even){background:#f5f5f5}.result-name{font-weight:600}.result-score{font-size:21px;font-weight:600;text-align:right}.result-detail{font-size:12px;color:#687587}.rank{margin-right:8px;color:#687587}.holes{display:flex;flex-wrap:wrap;gap:6px;padding:8px}.hole{padding:6px;border:1px solid #d3d9e1;font-size:12px}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #4580be;outline-offset:3px}
@media(max-width:640px){.viewer-nav-inner{padding:0 10px;gap:10px}.viewer-event-name{display:none}.viewer-readonly{margin-left:auto;font-size:10px}.viewer-board-picker{max-width:65%;min-width:0}.viewer-board-picker select{font-size:15px}.watch-shell{padding:10px 8px 20px}.viewer-action-grid{gap:8px;padding:0}.viewer-action{flex:1 1 180px;min-width:0}.viewer-utility-actions{padding-left:0;padding-right:0}.viewer-round-picker{margin-bottom:8px}.viewer-round-picker select{max-width:230px}}
/* Phone viewers use game blocks with scorecards below each result. */
#mobile-game-blocks{display:none}
@media(max-width:767px){
 #mobile-game-blocks{display:block}.viewer-board,#board-title,#viewer-board-actions,.viewer-actions h2,#page-controls,.viewer-board-picker{display:none!important}
 .viewer-event-name{display:block;margin-left:0;flex:1}
 .viewer-page-heading{margin-bottom:16px}.watch-shell{padding:12px}.viewer-round-picker{width:100%;justify-content:space-between}
 .mobile-game-block{border:1px solid #cfd7df;border-radius:5px;margin:0 0 16px;background:#fff}
 .mobile-game-block>summary{padding:18px 16px;color:#24689d;font-size:17px;font-weight:600;cursor:pointer;min-height:24px}
 .mobile-game-body{border-top:1px solid #dce2e9;padding:12px}.mobile-game-body:empty{display:none}
 .mobile-player{padding:12px 0;border-bottom:1px solid #dce2e9}.mobile-player:last-child{border-bottom:0}.mobile-player h3{font-size:16px;margin:0 0 6px}
 .mobile-player p{margin:6px 0}.mobile-expand-all{background:transparent;border:0;color:#24689d;padding:8px 0;cursor:pointer}
 .mobile-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0}.mobile-totals>div{background:#f3f6f8;padding:8px 4px;text-align:center;border-radius:4px}
 .mobile-totals span,.mobile-totals strong,.mobile-totals small{display:block}.mobile-totals span{font-size:12px}.mobile-totals strong{font-size:20px;padding:5px 0}.mobile-totals small{font-size:10px}
 .mobile-scoresheet>summary{padding:10px 0;color:#24689d;cursor:pointer}.mobile-score-scroll{overflow-x:auto;margin-bottom:12px}
 .mobile-score-table{border-collapse:collapse;min-width:100%;font-size:12px;text-align:center}.mobile-score-table caption{text-align:left;font-weight:600;padding:6px 0}
 .mobile-score-table th,.mobile-score-table td{min-width:25px;padding:7px 3px;border:1px solid #dce2e9}.mobile-score-table th{background:#f3f6f8;position:sticky;left:0;min-width:40px}
}
