[data-theme=sun]{--mo-field:#fff;--mo-sheet:#fff;--mo-sheet-alt:#eef0ee;--mo-muted:#3c464e;--mo-faint:#5f6b66;--text-secondary:#1c2229;--mo-line:#9aa7a1;--mo-hairline:#b6bfba;--mo-control-border:#3c464e;--mo-ranger:#3f5a30;--mo-ranger-deep:#2c4020;--mo-brass:#8a6a1e;--mo-brass-deep:#6e5418;--mo-red:#7c2a21;--focus-ring:0 0 0 3px var(--bg-surface), 0 0 0 6px var(--mo-ink);--bg-page:var(--mo-field);--bg-surface-alt:var(--mo-sheet-alt);--text-muted:var(--mo-muted);--text-faint:var(--mo-faint);--border-default:var(--mo-line);--border-hairline:var(--mo-hairline);--border-control:var(--mo-control-border);--accent:var(--mo-ranger);--hit-bg:#3f5a30;--hit-fg:#fff;--hit-border:#3f5a30;--miss-bg:#fff;--miss-fg:#1c2229;--miss-border:#1c2229;--shot-empty-border:#9aa7a1;--shot-changed:#8a6a1e;--touch-min:64px;--touch-string:280px;--hold-to-commit:.6s;--sun-body:500 16px/1.45 var(--font-text);--sun-body-strong:700 16px/1.45 var(--font-text);--sun-label:600 14px/1.2 var(--font-text);--sun-mono:500 18px/1.2 var(--font-mono);--sun-mono-lg:500 28px/1 var(--font-mono);--sun-shot-k:700 176px/1 var(--font-mono);--sun-shot-x:500 40px/1 var(--font-mono);--sun-shooter:700 44px/1 var(--font-display);--sun-button:700 18px/1 var(--font-text);--sun-button-lg:700 34px/1 var(--font-text)}.scoringApp{--sun-read-body:500 12px/1.45 var(--font-text);--sun-read-body-strong:700 12px/1.45 var(--font-text);--sun-read-mono:500 14px/1 var(--font-mono);--sun-read-mono-lg:500 21px/1 var(--font-mono);--sun-read-display:700 17px/1.1 var(--font-display);--sun-fit-shooter:700 35px/1.1 var(--font-display);--sun-fit-shot-k:700 140px/1 var(--font-mono);--sun-fit-shot-x:500 34px/1 var(--font-mono);height:100%;min-height:100vh;background:var(--bg-page);-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation;min-height:100svh;color:var(--text-primary);font:var(--sun-body);flex-direction:column;display:flex}html:has(>body>[data-theme=sun]){height:100%}html:has(>body>[data-theme=sun])>body{height:100%}html:has(>body>[data-theme=sun])>body>[data-theme=sun]{height:100%}:-webkit-full-screen{background:var(--bg-page)}:fullscreen{background:var(--bg-page)}.scoringHeader{height:64px;padding:0 var(--space-6);background:var(--bg-shell);color:var(--text-on-shell);flex:0 0 64px;justify-content:space-between;align-items:center;display:flex}.scoringNav{margin-right:auto;margin-left:var(--space-8);display:flex}.scoringNavLink{min-height:var(--touch-min);padding:0 var(--space-4);color:var(--text-on-shell);font:var(--sun-button);letter-spacing:.06em;text-transform:uppercase;opacity:.65;cursor:pointer;background:0 0;border:0}.scoringNavLink.current{opacity:1;box-shadow:inset 0 -3px 0 var(--mo-brass-on-shell)}.scoringNavLink:focus-visible{box-shadow:var(--focus-ring);outline:0}.squadSection,.rulesSection{min-height:0;padding:var(--space-6);gap:var(--space-4);font:var(--sun-read-body);flex:auto;grid-template-rows:auto 1fr auto;display:grid}.squadSectionHead{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.squadSection h1,.rulesSection h2{font:var(--display-xl);text-transform:uppercase;margin:0;font-size:30px}.squadSection .shooterRows{align-content:start}.squadTotal{padding-top:var(--space-3);border-top:2px solid var(--border-default);font:var(--sun-read-mono);margin:0}.rulesTabs{gap:var(--space-2);display:flex}.rulesTab{min-height:var(--touch-min);padding:0 var(--space-5);border:2px solid var(--border-control);border-radius:var(--radius);background:var(--bg-surface);color:var(--text-primary);font:var(--sun-button);text-transform:uppercase;cursor:pointer}.rulesTab.current{background:var(--accent);border-color:var(--accent);color:var(--accent-on)}.rulesBody{align-content:start;gap:var(--space-4);min-height:0;display:grid;overflow:auto}.rulesText{-webkit-user-select:text;user-select:text;white-space:pre-wrap;font:var(--sun-read-body);font-family:var(--font-text);margin:0}.rulesDiffering{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.rulesDiffering>li{gap:var(--space-2);padding-bottom:var(--space-3);border-bottom:2px solid var(--border-default);display:grid}.rulesDiffering strong{font:var(--sun-read-display);text-transform:uppercase}.scoringHeaderActions{align-items:center;gap:var(--space-2);display:flex}.scoringHeaderActions>:last-child{margin-right:calc(var(--space-4) * -1)}.syncStatusButton{width:64px;height:64px;color:var(--text-on-shell);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.syncStatusButton.failed{color:var(--mo-brass-on-shell)}.syncStatusButton.large{background:var(--mo-brass-on-shell);color:var(--bg-shell)}.syncStatusButton:focus-visible{box-shadow:var(--focus-ring);outline:0}.fullscreenButton{width:64px;height:64px;color:var(--text-on-shell);cursor:pointer;background:0 0;border:0;padding:0}.fullscreenButton:focus-visible{box-shadow:var(--focus-ring);outline:0}.syncSheet{top:var(--space-6);right:var(--space-6);border-top-width:6px;position:fixed}.syncSheetNotice{margin:var(--space-4) 0 0;color:var(--warn-text)}.syncSheetEyebrow{color:var(--text-muted);font:var(--mono-eyebrow);text-transform:uppercase;letter-spacing:.1em;margin:0}.joinStart,.joinCode{min-height:0;padding:var(--space-12);flex:auto;place-items:center;display:grid}.scoringEyebrow{font:var(--mono-eyebrow);text-transform:uppercase;letter-spacing:.1em}.muted{color:var(--text-muted)}.joined{color:var(--accent-text)}.joinActions{gap:var(--space-4);width:min(560px,100%);display:grid}.sunButton{border:2px solid var(--accent);border-radius:var(--radius);background:var(--accent);min-height:112px;color:var(--accent-on);font:var(--sun-button);letter-spacing:.06em;text-transform:uppercase;padding:var(--space-4) var(--space-8);cursor:pointer}.sunButton.secondary{background:var(--bg-surface);min-height:64px;color:var(--text-primary);border-color:var(--border-control)}.sunButton:disabled{opacity:.3;cursor:default}.sunButton:focus-visible{box-shadow:var(--focus-ring);outline:0}.scanner{min-height:0;padding:var(--space-6);align-content:center;justify-items:center;gap:var(--space-4);flex:auto;display:grid}.viewfinder{aspect-ratio:1;border-radius:var(--radius);background:#0c0f12;width:min(560px,100%);position:relative;overflow:hidden}.viewfinder:before,.viewfinder:after{content:"";z-index:1;pointer-events:none;border:6px solid #0000;position:absolute;inset:72px}.viewfinder:before{border-top-color:#fff;border-left-color:#fff}.viewfinder:after{border-bottom-color:#fff;border-right-color:#fff}.viewfinder video{object-fit:cover;width:100%;height:100%}.scanLine{background:#fff;height:6px;animation:3s linear infinite sweep;position:absolute;left:8%;right:8%}@keyframes sweep{0%{top:8%}to{top:90%}}.codeSlots{gap:var(--space-3);grid-template-columns:repeat(6,1fr);width:100%;display:grid;position:relative}.codeSlots input{opacity:0;cursor:text;position:absolute;inset:0}.codeSlots span{border:2px solid var(--border-control);border-radius:var(--radius);background:var(--bg-input);min-height:112px;font:500 56px/1 var(--font-mono);text-transform:uppercase;place-items:center;display:grid}.codeSlots:focus-within span{border-color:var(--text-primary)}.joinFailed{min-height:0;padding:var(--space-12);align-items:center;gap:var(--space-12);flex:auto;grid-template-columns:1fr 1fr;display:grid}.joinFailed h2,.squadHeader h1{font:var(--display-xl);text-transform:uppercase;margin:0;font-size:44px}.joinFailed p{max-width:520px}.download,.squadHome{max-width:900px;padding:var(--space-12);margin:0 auto}.download{gap:var(--space-6);display:grid}.squadHeader{align-items:baseline;gap:var(--space-5);padding-bottom:var(--space-4);border-bottom:2px solid var(--border-default);display:flex}.squadHeader span{color:var(--text-muted)}.downloadWarning{color:var(--warn-text);font:var(--sun-body-strong);margin:0}.squadHome{gap:var(--space-8);max-width:none;font:var(--sun-read-body);display:grid}.shootersScreen h1{font:var(--display-xl);font-size:30px}.scoringStageList,.shooterRows,.shootersShotPlan,.shotPlanReference ol{margin:0;padding:0;list-style:none}.scoringStageList{gap:var(--space-3);display:grid}.scoringStageList>li{align-items:center;gap:var(--space-4);min-height:88px;padding:var(--space-3) var(--space-4);border:2px solid var(--border-default);background:var(--bg-surface);grid-template-columns:72px minmax(160px,1fr) minmax(140px,.7fr) minmax(150px,190px);display:grid}.scoringStageList>li.current{border-left:10px solid var(--text-primary)}.stageNumber{font:var(--sun-read-mono-lg)}.stageIdentity,.shooterProgress{gap:var(--space-1);display:grid}.stageIdentity strong{font:var(--sun-read-display);text-transform:uppercase}.stageIdentity small{color:var(--accent-text);font:var(--mono-eyebrow);text-transform:uppercase}.shooterStrip{gap:var(--space-1);display:flex}.shooterStrip i{border:2px solid var(--border-control);background:var(--bg-surface);width:18px;height:18px}.shooterStrip i.filled{background:var(--accent);border-color:var(--accent)}.stageAction,.textBack,.undoButton{min-height:var(--touch-min);border:2px solid var(--border-control);border-radius:var(--radius);background:var(--bg-surface);color:var(--text-primary);font:var(--sun-button);text-transform:uppercase;cursor:pointer}.stageAction.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-on)}.doneScoring{min-height:64px;padding:0 var(--space-8);margin-left:auto}.homeDisputes{gap:var(--space-3);display:grid}.shootersScreen{min-height:0;font:var(--sun-read-body);padding:var(--space-6);gap:var(--space-6);flex:auto;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(360px,1.35fr) minmax(280px,1fr);display:grid}.shootersStage{flex-direction:column;display:flex}.shootersStage>.textBack{align-self:start;margin-top:auto}.stageBriefing{gap:var(--space-3);padding:var(--space-3) 0;border-bottom:2px solid var(--border-default);display:grid}.stageFacts{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.stageFacts strong{font:var(--sun-read-body-strong)}.stageFacts dl{gap:var(--space-4);margin:0;display:flex}.stageFacts dl>div{align-items:baseline;gap:var(--space-2);display:flex}.stageStart{gap:var(--space-2);margin:0;display:grid}.stageStart>div{align-items:baseline;gap:var(--space-3);grid-template-columns:104px 1fr;display:grid}.stageFacts dt,.stageStart dt{color:var(--text-muted);font:var(--mono-eyebrow);text-transform:uppercase}.stageFacts dd,.stageStart dd{margin:0}.stageFacts dd{font:var(--sun-read-mono)}.stageNotes{gap:var(--space-1);display:grid}.stageNotes span{color:var(--text-muted);font:var(--mono-eyebrow);text-transform:uppercase}.stageNotes p{white-space:pre-wrap;margin:0}.shootersShotPlan{flex:auto;min-height:0;overflow:auto}.shootersShotPlan>li{padding:var(--space-2) 0;border-bottom:2px solid var(--border-default)}.textBack{padding:0 var(--space-4)}.shooterRows{align-content:start;gap:var(--space-1);min-height:0;display:grid;overflow:auto}.shooterRow{width:100%;min-height:56px;padding:var(--space-1) var(--space-4);border:2px solid var(--border-default);background:var(--bg-surface);color:var(--text-primary);text-align:left;justify-content:space-between;align-items:center;display:flex}.shooterRows button.shooterRow{cursor:pointer}.shooterRow.sealed{cursor:default}.shooterRow>span:first-child{align-items:baseline;gap:var(--space-3);min-width:0;display:flex}.shooterRows strong{font:var(--sun-read-display);text-transform:uppercase}.shooterRows small,.division{font:var(--mono-eyebrow);text-transform:uppercase}.shooterScore{align-items:center;gap:var(--space-3);display:flex}.shooterScore>div{min-width:80px;height:36px;font:var(--sun-read-mono-lg);justify-content:center}.notScored{color:var(--text-muted);font:var(--sun-read-mono)}.activeScoring{flex:auto;grid-template:"plan counter actions"minmax(480px,1fr)/minmax(200px,.85fr) minmax(300px,1.15fr) minmax(260px,1fr);min-height:0;display:grid;overflow:auto}.shotPlanReference{padding:var(--space-5);border-right:2px solid var(--border-default);flex-direction:column;grid-area:plan;display:flex}.shotPlanReference ol{flex:auto;min-height:0;overflow:auto}.startTimerStart{border-radius:var(--radius);background:var(--bg-shell);height:88px;color:var(--text-on-shell);cursor:pointer;border:0;align-items:center;gap:16px;margin:12px 0;padding:0 20px;display:flex}.startTimerStart:active{background:color-mix(in srgb, var(--bg-shell), black 6%)}.startTimerStart>span{text-align:left;gap:8px;display:grid}.startTimerStart b{font:var(--sun-button);letter-spacing:.06em;text-transform:uppercase;font-stretch:90%}.startTimerStart small{font:var(--sun-mono)}.startTimerRunning{grid-template-columns:minmax(0,1fr) 64px;gap:8px;height:88px;margin:12px 0;display:grid}.startTimerClock{border-radius:var(--radius);place-items:center;display:grid}.startTimerClock.standby,.startTimerClock.running{background:var(--bg-shell);color:var(--text-on-shell)}.startTimerClock.standby{font:700 34px/1 var(--font-display);letter-spacing:.04em;text-transform:uppercase;font-stretch:80%}.startTimerClock.running,.startTimerClock.done{font:700 72px/1 var(--font-mono);letter-spacing:-.02em}.startTimerClock.done{border:2px solid var(--border-control);background:var(--bg-surface-alt);color:var(--text-primary)}.startTimerReset{border:2px solid var(--text-primary);border-radius:var(--radius);background:var(--bg-surface);color:var(--text-primary);cursor:pointer}.shotPlanReference>ol>li{padding:var(--space-2) 0;border-bottom:2px solid var(--border-default)}.positionHeading{gap:var(--space-2);font:var(--sun-read-mono);grid-template-columns:auto 1fr;align-items:baseline;display:grid}.positionHeading>span{color:var(--text-muted)}.shotPlanReference li ul,.shootersShotPlan li ul{margin:var(--space-2) 0 0;padding:0;list-style:none}.shotPlanReference li li,.shootersShotPlan li li{align-items:center;gap:var(--space-3);padding:var(--space-2) 0 0;grid-template-columns:auto 1fr auto;display:grid}.shotPlanReference li li .targetOrder,.shootersShotPlan li li .targetOrder{min-width:32px;height:24px;padding:0 var(--space-1);border-radius:var(--radius);background:var(--bg-shell);color:var(--text-on-shell);font:var(--sun-read-mono);justify-content:center;align-items:center;display:inline-flex}.shotPlanReference li li b>span,.shootersShotPlan li li b>span{margin-left:var(--space-2);color:var(--text-muted);font:var(--mono-unit);letter-spacing:.1em;text-transform:uppercase}.shotPlanReference li li span,.shootersShotPlan li li span{color:var(--text-muted)}.shotPlanReference li li b,.shootersShotPlan li li b{font:var(--sun-read-mono-lg)}.holdButton{border:2px solid var(--border-control);background:var(--bg-surface);min-height:96px;color:var(--text-primary);opacity:.3;font:var(--sun-button);text-transform:uppercase;margin-top:auto;position:relative;overflow:hidden}.holdButton.ready{opacity:1;background:var(--accent);color:var(--accent-on);border:0}.holdFill{background:#00000040;width:0;position:absolute;top:0;bottom:0;left:0}.holdButton.ready:active .holdFill{width:100%;transition:width var(--hold-to-commit) linear}.holdButton span,.holdButton small{z-index:1;display:block;position:relative}.shotCounter{padding:var(--space-4);align-content:center;justify-items:center;gap:var(--space-4);text-align:center;grid-area:counter;display:grid}.shotEyebrow{color:var(--text-muted);margin:0}.shotCounter h1{font:var(--sun-fit-shooter);font-stretch:var(--display-stretch);text-transform:uppercase}.counter{align-items:baseline;gap:var(--space-3);display:flex}.counter strong{font:var(--sun-fit-shot-k)}.counter span{font:var(--sun-fit-shot-x)}.longGongName{font:var(--sun-fit-shooter)}.longGongClock{font:var(--sun-fit-shot-k);letter-spacing:-.02em}.shotString{justify-content:center;gap:var(--space-2);flex-wrap:wrap;max-width:100%;display:flex}.shotStringCell{border-radius:var(--radius);color:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:inline-grid}.shotStringCell:focus-visible{box-shadow:var(--focus-ring);outline:0}.undoButton{width:100%}.undoButton:disabled,.hitMiss button:disabled{opacity:.3;cursor:default}.hitMiss{grid-area:actions;grid-template-rows:1fr 1fr;display:grid}.hitMiss button{font:var(--sun-button-lg);text-transform:uppercase;cursor:pointer;border-radius:0}.hitMiss button span{place-items:center;display:grid}.hitButton{border:6px solid var(--hit-border);background:var(--hit-bg);color:var(--hit-fg)}.missButton{border:6px solid var(--miss-border);background:var(--miss-bg);color:var(--miss-fg)}.changeAnnouncement{min-height:var(--touch-min);padding:var(--space-4);margin:0 0 var(--space-4);background:var(--bg-shell);color:var(--warn-text);font:var(--sun-body-strong);background:var(--warn-tint)}.stageDialogBackdrop{z-index:10;padding:var(--space-6);background:var(--backdrop);place-items:center;display:grid;position:fixed;inset:0}.stageDialog{border-top:6px solid var(--bg-shell);background:var(--bg-surface);width:min(620px,100%);padding:var(--space-8);box-shadow:var(--shadow-dialog)}.stageDialog.danger{border-top-color:var(--danger)}.leaveWarning{padding:var(--space-4);background:var(--danger-tint);color:var(--danger-text);font:var(--sun-body-strong);margin:0}.stageWarning{padding:var(--space-4);background:var(--warn-tint);color:var(--warn-text);font:var(--sun-body-strong)}.stageWarning p{margin:0}.stageWarning ul{margin:var(--space-2) 0 0;padding:0 0 0 var(--space-5)}.stageAction.danger{background:var(--danger);border-color:var(--danger);color:var(--accent-on)}.stageDialog h2{font:var(--display-xl);text-transform:uppercase}.stageDialog>div{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.downloadSheet{background:var(--bg-surface);border:2px solid var(--border-default);padding:var(--space-8);gap:var(--space-8);display:grid}.progressRow>div{justify-content:space-between;display:flex}.progressRow progress{width:100%;height:24px;accent-color:var(--accent)}.progressRow progress.interrupted{accent-color:var(--warn-deep)}@media (max-width:720px){.joinStart,.joinCode,.joinFailed{padding:var(--space-6);grid-template-columns:1fr}.joinFailed{align-content:center}.squadHeader{gap:var(--space-2);display:grid}.doneScoring{margin-left:0}.shootersScreen{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.scanLine{animation:none;top:50%}}
