:root{color-scheme:dark;--bg:#101715;--panel:#19221f;--line:#314039;--muted:#a3b3a9;--ink:#f1f5e8;--lime:#f9c900;--orange:#f3b88e;--red:#ffa6a0}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);background:#233029;color:var(--ink);padding:12px 18px;border-radius:9px;font-weight:650}button:hover{border-color:var(--lime)}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}a:hover{color:var(--lime)}header{height:94px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 5vw}.brand{display:flex;align-items:center;font-size:23px;font-weight:850;letter-spacing:-1px;gap:12px}.brand small{font-size:9px;letter-spacing:2px;color:var(--muted);margin-left:16px}.brand-mark{width:39px;height:39px;background:var(--lime);color:var(--bg);display:grid;place-content:center;position:relative;border-radius:8px;font-size:29px;font-style:italic}.brand-mark span{position:absolute;font-size:18px;right:0;top:-6px}.header-right{display:flex;align-items:center;gap:20px}#network{font-size:12px;color:var(--lime)}main{max-width:1250px;margin:auto;padding:45px 36px 80px;min-height:calc(100vh - 160px)}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:750;color:var(--lime);text-transform:uppercase}.hero{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:32px}.hero h1{font-size:clamp(32px,5vw,60px);line-height:1.05;letter-spacing:-2.5px;margin:16px 0}.hero p{color:var(--muted);max-width:560px}.primary{background:var(--lime);color:#182215;border:1px solid var(--lime)}.quiet{background:transparent}.danger{color:var(--red);border-color:#724e48}.wide{width:100%}.muted{color:var(--muted)}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:25px}.toolbar input{max-width:310px}.toolbar .spacer{flex:1}input,select{border:1px solid var(--line);background:#111a16;color:var(--ink);padding:12px 14px;border-radius:8px;width:100%;min-height:46px}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--lime);outline-offset:3px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);background:var(--panel);border-radius:16px;overflow:hidden}.card-art{height:135px;background:#25382d;position:relative;overflow:hidden}.card-art:before,.card-art:after{content:"";position:absolute;inset:20px -40px -60px;background:#334d3b;transform:rotate(-18deg);border-top:1px solid #54725a}.card-art:after{inset:50px -40px -60px;background:#496348;transform:rotate(20deg)}.card:nth-child(2n) .card-art{background:#353b2b}.card:nth-child(2n) .card-art:after{background:#676f43}.card-content{padding:24px}.card h2{font-size:24px;margin:14px 0 8px;letter-spacing:-.6px}.badge{display:inline-flex;border:1px solid #52613c;background:#f9c90014;color:var(--lime);padding:4px 9px;border-radius:6px;font-size:11px;font-weight:700;letter-spacing:.5px}.card-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px;margin-top:23px}.empty{border:1px dashed var(--line);padding:48px;text-align:center;border-radius:14px;color:var(--muted);grid-column:1/-1}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0}.stat{background:var(--panel);border:1px solid var(--line);padding:18px 22px;border-radius:12px}.stat b{font-size:29px;display:block;font-variant-numeric:tabular-nums}.stat span{font-size:12px;color:var(--muted)}.tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin:30px 0 25px}.tabs button{border:none;background:transparent;border-radius:0;padding:12px 0;color:var(--muted)}.tabs button.active{border-bottom:3px solid var(--lime);color:var(--lime)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:24px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);padding:15px 16px;border-bottom:1px solid var(--line)}td{padding:18px 16px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}tbody tr:last-child td{border-bottom:0}td.total{font-size:21px;font-weight:800;color:var(--lime)}.rank{color:var(--muted);width:45px}.name{font-weight:700}.caption{font-size:12px;color:var(--muted);margin-top:16px}.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.list-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);gap:12px}.list-row:last-child{border:0}label{display:block;font-size:12px;color:var(--muted);margin:14px 0 6px}h2,h3{letter-spacing:-.5px}.back{display:inline-block;font-size:13px;color:var(--muted);margin-bottom:20px}.judge{max-width:850px;margin:auto}.timer-panel{background:var(--lime);color:#142015;border-radius:18px;padding:26px 30px;margin:20px 0}.timer-top{display:flex;justify-content:space-between;font-weight:650;font-size:13px}.timer{font-size:clamp(65px,14vw,104px);line-height:1.2;letter-spacing:-5px;font-weight:850;font-variant-numeric:tabular-nums}.timer-body{display:flex;justify-content:space-between;align-items:center}.score-block{text-align:right;font-size:13px}.score-block strong{display:block;font-size:56px;line-height:1.1}.timer-panel button{background:#17271b;color:var(--lime);border:0}.save-state{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:20px;gap:12px}.score-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.score-button{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;min-height:100px;padding:18px;background:var(--panel);text-align:left}.score-button strong{font-size:27px;font-weight:550;color:var(--orange)}.score-button.progress{grid-column:span 2;background:#2a3924;border-color:#6a7b48}.score-button.progress strong,.score-button.bonus strong{color:var(--lime)}.judge-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.judge-actions button{flex:1}.event-log{max-height:230px;overflow:auto}.event-log .list-row{font-size:13px}.event-log time{color:var(--muted);font-variant-numeric:tabular-nums}.notice{border:1px solid #6f6742;background:#37321f;padding:16px;border-radius:9px;margin:16px 0;color:#f3d99c}.hidden{display:none!important}dialog{color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:18px;width:min(560px,95vw);max-height:90vh;padding:28px}dialog::backdrop{background:#000a;backdrop-filter:blur(4px)}.modal-heading{display:flex;justify-content:space-between;align-items:center}.modal-heading h2{margin:0}#modal-submit{width:100%;margin-top:20px}#form-error{color:var(--red)}.rule-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}details{margin:20px 0}summary{cursor:pointer;color:var(--muted)}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--lime);color:#182215;border-radius:10px;padding:14px 22px;display:none;max-width:90vw;z-index:5}footer{border-top:1px solid var(--line);padding:22px 5vw;color:var(--muted);font-size:10px;display:flex;justify-content:space-between;gap:20px;letter-spacing:1px}@media(max-width:850px){.cards{grid-template-columns:1fr 1fr}.brand small{display:none}}@media(max-width:600px){header{height:75px;padding:0 18px}.brand{font-size:19px}.header-right{gap:10px}#network{display:none}main{padding:28px 18px 50px}.hero{display:block}.hero h1{letter-spacing:-1px}.hero .primary{margin-top:10px}.cards,.split{grid-template-columns:1fr}.card-art{height:105px}.stats{gap:8px}.stat{padding:12px}.stat b{font-size:24px}.tabs{gap:20px}.panel{padding:16px}.timer-panel{padding:20px}.timer{letter-spacing:-3px}.score-grid{gap:9px}.score-button{padding:14px;min-height:93px;font-size:13px}.save-state{font-size:11px}.judge-actions button{padding:12px}.card h2{font-size:24px}.toolbar input{max-width:none}footer{font-size:9px}.header-right button{padding:9px}}

.correction-row{display:grid;grid-template-columns:1fr 100px auto;gap:8px;margin:8px 0}.correction-row input,.correction-row select{min-width:0}pre{white-space:pre-wrap;overflow-wrap:anywhere}

/* Equal prominence for penalties and score; penalties determine the course limit. */
.timer-body{flex-wrap:wrap;gap:18px;padding:12px 0}
.judge-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;flex:1;min-width:280px}
.judge-totals .score-block{text-align:center;padding:12px 8px;border:1px solid #14201540;border-radius:12px;min-width:0}
.judge-totals .score-block strong{font-size:56px;font-weight:850;font-variant-numeric:tabular-nums}
.judge-totals .score-block>span:first-child{font-weight:750;letter-spacing:1px}
.score-detail{display:block;font-size:11px;margin-top:6px}
.penalty-block{background:#ffffff35}
.penalty-block.near-limit{background:#ffe0a3;border:2px solid #845000}
.penalty-block.at-limit{background:#ffd2cc;border:2px solid #8b2219}
@media(max-width:600px){.timer-body{display:block}.timer{text-align:center}.judge-totals{min-width:0;width:100%;margin:12px 0 4px}.judge-totals .score-block strong{font-size:56px}.score-detail{font-size:10px}}

header{height:auto;min-height:94px;gap:20px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.brand-logo{width:180px;height:auto;display:block}.brand-title{font-size:25px;letter-spacing:-1px}.header-right{gap:8px;flex-wrap:wrap}.header-right button{padding:9px 12px}
.home-emblem{width:140px;max-height:150px;object-fit:contain;opacity:.95}.hero-brand{display:flex;align-items:center;gap:24px}
.account-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.account-row small{display:block;color:var(--muted)}
@media(max-width:600px){.brand-logo{width:135px}.brand-title{font-size:21px}header{padding:12px 18px}.header-right{width:100%;justify-content:flex-end}.header-right button{font-size:12px;padding:8px}.home-emblem{display:none}}

.card-art{background:#5e4c12}.card-art:before{background:#806819;border-top-color:#b99b38}.card-art:after{background:#b59325}.card:nth-child(2n) .card-art{background:#6b5512}.card:nth-child(2n) .card-art:after{background:#c6a12a}
.score-button.progress{background:#3a3218;border-color:#927827}.timer-panel button{background:#29220e;color:#f9c900}.primary{color:#29220e}.badge{border-color:#796523}.rules-details summary{list-style:none;display:flex;align-items:center;gap:8px}.rules-details summary::-webkit-details-marker{display:none}.rules-details summary::marker{content:''}.rules-details summary span{font-size:21px;color:var(--lime)}

:root{--bg:#171610;--panel:#232117;--line:#45402d;--muted:#bab49c;--ink:#faf7e8}input,select{background:#1b1911}button{background:#302b1b}.primary{background:var(--lime)}.quiet,.tabs button{background:transparent}.score-button{background:var(--panel)}.score-button.progress{background:#3a3218}.card-art:before,.card-art:after{border-top-color:#b99b38}

#final-rules{border:0;padding:0;margin:0;min-width:0}

.back{display:inline-flex;align-items:center;min-height:48px;padding:12px 18px;border:2px solid var(--lime);border-radius:10px;background:#332d16;color:var(--lime);font-size:15px;font-weight:750;gap:10px}.back:hover{background:var(--lime);color:var(--bg)}
.class-options{border:1px solid var(--line);border-radius:10px;margin:20px 0;padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.class-options label{display:flex;align-items:center;gap:10px;font-size:15px;margin:0;padding:8px}.class-options input{width:22px;height:22px;min-height:22px;accent-color:var(--lime)}
.class-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.class-link{display:inline-flex;align-items:center;min-height:46px;padding:10px 16px;border:1px solid var(--lime);border-radius:8px;color:var(--lime);font-weight:700}.class-link:hover,.class-link.selected{background:var(--lime);color:var(--bg)}

.cup-links,.cup-table{margin-top:26px}.mobile-home-emblem{display:none}textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:#1b1911;color:var(--ink);font:inherit;resize:vertical}.hero h1,.hero p{overflow-wrap:anywhere}
@media(max-width:600px){.mobile-home-emblem{display:flex;justify-content:center;padding:36px 0 8px}.mobile-home-emblem img{width:140px;max-width:50vw;height:auto}.hero-brand{min-width:0}}

.cup-links{margin:0 0 24px}.cup-links select{width:auto;min-width:200px;max-width:100%}

.pin-option{display:flex;align-items:center;gap:10px;font-size:15px;color:var(--ink)}.pin-option input{width:22px;height:22px;min-height:22px;accent-color:var(--lime)}
