@font-face{font-family:Doto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/doto-latin-ext-full-normal-sLBPzHsa.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Doto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/doto-latin-full-normal-Cy2ndtyN.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-semi-condensed-vietnamese-400-normal-Dj7eBp_3.woff2)format("woff2"),url(/assets/barlow-semi-condensed-vietnamese-400-normal-D1YxRXwC.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-semi-condensed-latin-ext-400-normal-BDztQS4c.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-ext-400-normal-Bm5hzUPR.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-semi-condensed-latin-400-normal-DlzeKIMS.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-400-normal-CwTnoNB3.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-semi-condensed-vietnamese-600-normal-b1FQiZcx.woff2)format("woff2"),url(/assets/barlow-semi-condensed-vietnamese-600-normal-DzVrjA0Q.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-semi-condensed-latin-ext-600-normal-BkQ9hN72.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-ext-600-normal-BuP8AaxH.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-semi-condensed-latin-600-normal-BkLiAYu4.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-600-normal-DyOfdMBA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-semi-condensed-vietnamese-700-normal-Dm7RZTvf.woff2)format("woff2"),url(/assets/barlow-semi-condensed-vietnamese-700-normal-BvUTSFNY.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-semi-condensed-latin-ext-700-normal-BhgEo64M.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-ext-700-normal-C0vCoZIV.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-semi-condensed-latin-700-normal-BpqDG8I9.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-700-normal-BMyZXq_9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--surface-field:oklch(18% .02 165);--surface-panel:oklch(22% .025 165);--surface-raised:oklch(27% .03 165);--surface-raised-hover:oklch(30% .032 165);--surface-inset:oklch(15% .018 165);--border-subtle:oklch(33% .025 165);--border-strong:oklch(42% .03 165);--lamp-amber:oklch(82% .17 75);--lamp-amber-soft:oklch(82% .17 75/.45);--lamp-amber-dim:oklch(42% .07 75);--lamp-green:oklch(85% .2 145);--lamp-green-dim:oklch(41% .07 145);--lamp-red:oklch(70% .19 25);--lamp-red-dim:oklch(41% .08 25);--text-structural:oklch(93% .01 165);--text-muted:oklch(75% .02 165);--text-faint:oklch(65% .02 165);--danger:oklch(62% .19 25);--danger-text:oklch(78% .14 25);--font-ui:"Barlow Semi Condensed", "Arial Narrow", sans-serif;--font-digits:"Doto Variable", "Courier New", monospace;--track-caps:.09em;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--focus-ring:2px solid var(--lamp-amber);--ease-out:cubic-bezier(.22, 1, .36, 1);--t-fast:.15s}.sb-tag-name{color:var(--text-structural);font-weight:600}.glance-overlay{z-index:60;place-content:center;justify-items:center;gap:var(--space-md);opacity:0;pointer-events:none;transition:opacity .4s var(--ease-out);background:oklch(5% .005 165);display:grid;position:fixed;inset:0}.glance-overlay.is-on{opacity:1;pointer-events:auto}@media (prefers-reduced-motion:reduce){.glance-overlay{transition:none}}.glance-score{color:var(--lamp-amber-dim);font-size:clamp(4rem,24vw,7rem)}.glance-line{color:oklch(45% .04 75);font-size:1rem}.glance-hint{color:oklch(30% .02 165);letter-spacing:var(--track-caps);text-transform:uppercase;font-size:.8rem}.roster-list{gap:var(--space-2xs);margin:0;padding:0;list-style:none;display:grid}.roster-list li{align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--border-subtle);padding:var(--space-2xs) 0;grid-template-columns:3em 1fr auto;display:grid}.roster-num{color:var(--lamp-amber)}.roster-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.roster-remove{min-height:40px;font-size:.75rem}.roster-add{grid-template-columns:4.5em 1fr auto}.roster-add input{min-height:48px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--surface-field);color:var(--text-structural);font-family:var(--font-ui);letter-spacing:.01em;-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.5}button{font:inherit;color:inherit}:focus-visible{outline:var(--focus-ring);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.digits{font-family:var(--font-digits);font-variation-settings:"ROND" 100;font-variant-numeric:tabular-nums;font-weight:700;line-height:1}.caps-label{letter-spacing:var(--track-caps);text-transform:uppercase;font-weight:600}.scoreboard{width:100%;container-type:inline-size}.sb-housing{gap:var(--space-lg);background:var(--surface-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg) var(--space-md) var(--space-md);display:grid;box-shadow:inset 0 1px oklch(100% 0 0/.04)}.sb-teams{align-items:start;gap:var(--space-sm);grid-template-rows:auto auto;grid-template-columns:1fr auto 1fr;display:grid}.sb-team{grid-template-rows:subgrid;place-items:end center;gap:var(--space-sm);grid-row:span 2;min-width:0;display:grid}.sb-inning{grid-row:span 2}.sb-team-name{letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--text-structural);text-align:center;text-wrap:balance;overflow-wrap:break-word;justify-content:center;align-items:center;gap:var(--space-xs);max-width:100%;font-size:clamp(.85rem,4cqw,1.4rem);font-weight:700;line-height:1.15;display:flex}.sb-team-name-text{text-wrap:balance;overflow-wrap:break-word;min-width:0}.sb-atbat{border-block:.28em solid #0000;border-left:.42em solid var(--lamp-amber);width:0;height:0;filter:drop-shadow(0 0 4px var(--lamp-amber-soft));flex:none;align-self:center}.sb-score{background:var(--surface-inset);border:1px solid var(--border-subtle);border-radius:var(--radius-md);text-align:center;min-width:1.6em;color:var(--lamp-amber);text-shadow:0 0 .4em var(--lamp-amber-soft);padding:.12em .18em;font-size:clamp(3rem,22cqw,7.5rem);display:block}.sb-inning{justify-items:center;gap:var(--space-xs);padding-top:var(--space-xs);display:grid}.sb-inning-label{color:var(--text-muted);font-size:clamp(.7rem,2.6cqw,1rem)}.sb-inning-num{color:var(--lamp-amber);text-shadow:0 0 .4em var(--lamp-amber-soft);font-size:clamp(1.8rem,9cqw,3.4rem)}.sb-inning-half{color:var(--lamp-amber);letter-spacing:var(--track-caps);font-size:clamp(.8rem,3cqw,1.1rem);font-weight:700}.sb-inning .sb-inning-num--final,.spectator .sb-inning .sb-inning-num--final{letter-spacing:.06em;padding-top:.4em;font-size:clamp(1.1rem,5.5cqw,2.2rem)}.sb-final .sb-inning-num,.sb-final .sb-inning-half{color:var(--lamp-red);text-shadow:0 0 .4em oklch(70% .19 25/.4)}.diamond{--base-size:clamp(.55rem, 2.6cqw, .85rem);width:calc(var(--base-size) * 3.2);height:calc(var(--base-size) * 2.4);margin-top:var(--space-xs);position:relative}.base{width:var(--base-size);height:var(--base-size);background:var(--lamp-amber-dim);border:1px solid var(--border-strong);transition:background-color var(--t-fast) var(--ease-out), box-shadow var(--t-fast) var(--ease-out);border-radius:15%;position:absolute;rotate:45deg}.base.is-on{background:var(--lamp-amber);box-shadow:0 0 8px var(--lamp-amber-soft);border-color:#0000}.base--second{top:0;left:50%;translate:-50%}.base--third{bottom:0;left:0}.base--first{bottom:0;right:0}@media (prefers-reduced-motion:reduce){.base{transition:none}}.sb-tags{justify-content:center;gap:clamp(var(--space-md), 6cqw, var(--space-2xl));color:var(--text-muted);font-size:.8rem;display:flex}.sb-tags .caps-label{color:var(--text-faint);font-size:.7rem}.sb-tag-num{color:var(--text-structural);font-size:.95rem}.sb-tag-count{color:var(--lamp-amber);text-shadow:0 0 .35em var(--lamp-amber-soft);font-size:1.05rem}.sb-timer-done{color:var(--lamp-red);text-shadow:0 0 .35em oklch(70% .19 25/.4)}.tag-edit{grid-template-columns:minmax(0,1fr) auto auto auto}.tag-edit input{min-height:48px;font-family:var(--font-digits);font-variation-settings:"ROND" 100;text-align:center;font-size:1.2rem}.sb-count{justify-content:center;gap:clamp(var(--space-md), 6cqw, var(--space-2xl));border-top:1px solid var(--border-subtle);padding-top:var(--space-md);display:flex}.lamp-group{justify-items:center;gap:var(--space-xs);display:grid}.lamp-group-label{color:var(--text-muted);font-size:clamp(.7rem,2.4cqw,.95rem)}.lamp-row{gap:clamp(var(--space-xs), 2cqw, var(--space-sm));display:flex}.lamp{aspect-ratio:1;border:1px solid var(--border-strong);background:var(--lamp-off,var(--lamp-amber-dim));width:clamp(.9rem,4cqw,1.4rem);transition:background-color var(--t-fast) var(--ease-out), box-shadow var(--t-fast) var(--ease-out);border-radius:50%}.lamp.is-lit{background:var(--lamp-on,var(--lamp-amber));box-shadow:0 0 10px var(--lamp-glow,var(--lamp-amber-soft));border-color:#0000}.lamp-green{--lamp-on:var(--lamp-green);--lamp-off:var(--lamp-green-dim);--lamp-glow:oklch(85% .2 145/.4)}.lamp-red{--lamp-on:var(--lamp-red);--lamp-off:var(--lamp-red-dim);--lamp-glow:oklch(70% .19 25/.4)}@keyframes lamp-strike{0%{opacity:1}35%{opacity:.35}to{opacity:1}}.sb-score.did-change,.sb-inning-num.did-change{animation:lamp-strike .12s var(--ease-out)}@media (prefers-reduced-motion:reduce){.sb-score.did-change,.sb-inning-num.did-change{animation:none}.lamp{transition:none}}.scoreboard--compact .sb-housing{gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md)}.scoreboard--compact .sb-score{border-radius:var(--radius-sm);font-size:clamp(1.8rem,11cqw,2.8rem)}.scoreboard--compact .sb-inning-num{font-size:clamp(1.1rem,5cqw,1.6rem)}.scoreboard--compact .sb-count{padding-top:var(--space-xs)}.scoreboard--compact .sb-team-name{font-size:clamp(.75rem,3.4cqw,1rem)}.scoreboard--compact .diamond{--base-size:.5rem;margin-top:var(--space-2xs)}.line-score-wrap{border-top:1px solid var(--border-subtle);padding-top:var(--space-sm);overflow-x:auto}.line-score{border-collapse:collapse;margin-inline:auto;font-size:.85rem}.line-score th,.line-score td{text-align:center;padding:2px .45em;font-weight:400}.line-score thead th{color:var(--text-faint);letter-spacing:.04em;font-size:.7rem;font-weight:600}.line-score tbody th{text-align:right;color:var(--text-muted);letter-spacing:var(--track-caps);text-transform:uppercase;white-space:nowrap;padding-right:.7em;font-size:.7rem;font-weight:600}.line-score td.digits{color:var(--text-muted);font-size:.95rem}.line-score .ls-total{border-left:1px solid var(--border-subtle)}.line-score td.ls-total{color:var(--lamp-amber);text-shadow:0 0 .35em var(--lamp-amber-soft)}.sign{color:#111;align-content:center;justify-items:center;gap:var(--space-lg);min-height:100svh;padding:var(--space-2xl) var(--space-lg);text-align:center;background:#fff;display:grid}.sign h1{letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:clamp(2.4rem,8vw,4rem);font-weight:700}.sign-teams{text-transform:uppercase;letter-spacing:var(--track-caps);color:#333;margin:0;font-size:clamp(1.1rem,4vw,1.6rem);font-weight:600}.sign-qr{width:min(70vw,420px)}.sign-qr svg{width:100%;height:auto;display:block}.sign-scan{color:#333;margin:0;font-size:clamp(1rem,3.4vw,1.4rem)}.sign-url{margin:0;font-size:clamp(1.3rem,5vw,2.2rem);font-weight:700}.sign-code{font-family:var(--font-digits);font-variation-settings:"ROND" 100;letter-spacing:.1em;margin-left:.4em}.sign-print{min-width:16rem}@media print{.sign-print{display:none}.sign{min-height:auto}}.logbook{color:#161616;min-height:100svh;padding:var(--space-2xl) var(--space-lg);gap:var(--space-lg);background:#fff;align-content:start;max-width:52rem;margin-inline:auto;display:grid}.logbook h1{text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:1.8rem}.logbook h2{margin:0 0 var(--space-xs);text-transform:uppercase;letter-spacing:var(--track-caps);color:#444;font-size:1rem}.log-meta{margin:var(--space-2xs) 0 0;color:#555}.log-line{border-collapse:collapse}.log-line th,.log-line td{text-align:center;border:1px solid #ccc;padding:4px 10px}.log-line tbody th{text-align:right;text-transform:uppercase;font-size:.85rem}.log-line .log-total{border-left:2px solid #888;font-weight:700}.logbook p{margin:0}.log-plays{gap:2px;margin:0;padding:0;list-style:none;display:grid}.log-plays li{gap:var(--space-sm);border-bottom:1px solid #eee;grid-template-columns:2.6em 1fr auto;padding:3px 0;font-size:.95rem;display:grid}.log-ctx{color:#777;font-size:.85rem}.log-score{color:#555;font-variant-numeric:tabular-nums}.log-print{justify-self:start}@media print{.log-print{display:none}.logbook{min-height:auto;padding:0}}.pbp-actions{gap:var(--space-xs);display:flex}.pbp-actions .notify-btn{align-items:center;min-height:40px;text-decoration:none;display:inline-flex}.spectator{min-height:100svh;padding:var(--space-md);padding-top:calc(var(--space-md) + env(safe-area-inset-top));padding-bottom:calc(var(--space-md) + env(safe-area-inset-bottom));gap:var(--space-md);grid-template-rows:1fr auto;max-width:1100px;margin-inline:auto;display:grid}.spectator-main{align-content:center;display:grid}.spectator .sb-housing{min-height:min(62svh,560px);padding:var(--space-xl) var(--space-md) var(--space-lg);grid-template-rows:1fr auto}.spectator .sb-teams{align-self:center}.spectator .sb-score{font-size:clamp(3.2rem,24cqw,9rem)}.spectator .sb-inning-num{font-size:clamp(2rem,10cqw,3.8rem)}.spectator .sb-count{padding-top:var(--space-lg)}.spectator .lamp{width:clamp(1.1rem,5cqw,1.5rem)}.spectator-footer{justify-content:center;align-items:center;gap:var(--space-md);color:var(--text-faint);flex-wrap:wrap;font-size:.85rem;display:flex}.spectator-footer .digits{color:var(--text-muted);font-size:.95rem}.notify-btn{font:inherit;letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border-subtle);min-height:48px;padding:var(--space-2xs) var(--space-md);cursor:pointer;transition:background-color var(--t-fast) var(--ease-out);background:0 0;border-radius:999px;font-size:.8rem;font-weight:600}.notify-btn:hover{background:var(--surface-panel)}.notify-btn.is-on{color:var(--lamp-amber);border-color:oklch(55% .1 75)}.install-guide{justify-items:start;gap:var(--space-sm);background:var(--surface-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-lg);text-align:left;color:var(--text-muted);flex-basis:100%;max-width:44ch;margin-inline:auto;font-size:.95rem;display:grid}.install-guide-title{color:var(--text-structural);margin:0;font-weight:600}.install-guide ol{gap:var(--space-xs);margin:0;padding-left:1.4em;display:grid}.install-guide strong{color:var(--text-structural)}.install-guide .share-icon{vertical-align:-.2em;color:var(--lamp-amber)}.install-guide .notify-btn{justify-self:center}.conn-pill{top:calc(var(--space-sm) + env(safe-area-inset-top));background:var(--surface-raised);border:1px solid var(--border-strong);padding:var(--space-2xs) var(--space-sm);color:var(--text-muted);letter-spacing:var(--track-caps);text-transform:uppercase;border-radius:999px;font-size:.8rem;font-weight:600;position:fixed;left:50%;translate:-50%}.pbp-toggle{margin-top:var(--space-md);justify-self:center}.pbp{margin-top:var(--space-md);background:var(--surface-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-lg);gap:var(--space-sm);display:grid}.pbp-head{color:var(--text-muted);justify-content:space-between;align-items:center;display:flex}.pbp-head .notify-btn{min-height:40px}.pbp-list{gap:var(--space-2xs);max-height:50svh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.pbp-list li{align-items:baseline;gap:var(--space-sm);padding:var(--space-2xs) 0;border-bottom:1px solid oklch(26% .02 165);grid-template-columns:2.6em 1fr auto;font-size:.95rem;display:grid}.pbp-list li:last-child{border-bottom:none}.pbp-ctx{color:var(--text-faint);font-size:.8rem;font-weight:600}.pbp-score{color:var(--text-muted);font-size:.9rem}.pbp-empty{color:var(--text-faint);margin:0;font-size:.9rem}.keeper{gap:var(--space-md);min-height:100svh;padding:var(--space-sm) var(--space-md);padding-top:calc(var(--space-sm) + env(safe-area-inset-top));padding-bottom:calc(var(--space-sm) + env(safe-area-inset-bottom));grid-template-rows:auto 1fr auto;width:100%;max-width:560px;margin-inline:auto;display:grid}.keeper-controls{gap:var(--space-md);align-content:start;display:grid}.control-row{gap:var(--space-sm);grid-auto-columns:1fr;grid-auto-flow:column;display:grid}.btn{border:1px solid var(--border-strong);background:var(--surface-raised);border-radius:var(--radius-md);min-height:60px;padding:var(--space-sm) var(--space-md);cursor:pointer;letter-spacing:var(--track-caps);text-transform:uppercase;transition:background-color var(--t-fast) var(--ease-out);touch-action:manipulation;-webkit-tap-highlight-color:transparent;place-items:center;gap:2px;font-size:1rem;font-weight:700;display:grid}.btn:hover{background:var(--surface-raised-hover)}.btn:active{background:var(--surface-inset);translate:0 1px}.btn:disabled{opacity:.45;cursor:default;translate:none}.btn-sub{letter-spacing:.02em;text-transform:none;color:var(--text-muted);font-size:.75rem;font-weight:400}.btn--tall{min-height:76px;font-size:1.15rem}.btn--quiet{border-color:var(--border-subtle);color:var(--text-muted);background:0 0;min-height:48px;font-size:.85rem}.btn--quiet:hover{background:var(--surface-panel)}.btn--danger{color:var(--danger-text);border-color:oklch(45% .12 25)}.btn .count-badge{color:var(--lamp-amber);font-size:1.2rem}.run-label{align-items:center;gap:var(--space-xs);text-overflow:ellipsis;min-width:0;display:inline-flex;overflow:hidden}.btn--confirm{border-color:var(--lamp-amber);color:var(--lamp-amber)}.btn--suggest{color:var(--text-structural);border-style:dashed;border-color:oklch(50% .09 75)}.section-label{color:var(--text-faint);margin:var(--space-xs) 0 calc(-1 * var(--space-xs));font-size:.75rem}.action-row{grid-auto-columns:unset;grid-template-columns:1.5fr 1fr 1fr}.btn--hit{min-height:76px;color:var(--lamp-amber);border-color:oklch(55% .1 75);font-size:1.15rem}.chip-row{grid-template-columns:repeat(auto-fit,minmax(64px,1fr));grid-auto-flow:row}.chip{min-height:48px;padding-inline:var(--space-xs);font-size:.95rem}.hit-wizard{gap:var(--space-xs);display:grid}.hit-wizard-label{justify-content:space-between;align-items:baseline;gap:var(--space-sm);margin:var(--space-xs) 0 0;display:flex}.hit-wizard-jersey{color:var(--lamp-amber);text-shadow:0 0 .35em var(--lamp-amber-soft);font-size:.9rem}.hit-wizard-progress{color:var(--text-faint);flex:none;font-weight:400}.keeper-diamond{--kbase:56px;width:calc(var(--kbase) * 3.4);height:calc(var(--kbase) * 2.3);margin:var(--space-sm) auto var(--space-2xs);position:relative}.kbase{width:var(--kbase);height:var(--kbase);background:var(--lamp-amber-dim);border:1px solid var(--border-strong);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color var(--t-fast) var(--ease-out), box-shadow var(--t-fast) var(--ease-out);border-radius:12%;place-items:center;padding:0;display:grid;position:absolute;rotate:45deg}.kbase:disabled{opacity:.45;cursor:default}.kbase.is-on{background:var(--lamp-amber);box-shadow:0 0 12px var(--lamp-amber-soft);border-color:#0000}.kbase.is-selected{outline:2px solid var(--lamp-amber);outline-offset:4px}.kbase--second{top:0;left:50%;translate:-50%}.kbase--third{bottom:0;left:0}.kbase--first{bottom:0;right:0}.kbase-num{color:oklch(20% .03 75);font-size:1.25rem;rotate:-45deg}@media (prefers-reduced-motion:reduce){.kbase{transition:none}}.keeper{position:relative}.menu-btn{top:calc(var(--space-sm) + env(safe-area-inset-top));right:var(--space-md);background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-md);cursor:pointer;z-index:5;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:48px;height:48px;transition:background-color var(--t-fast) var(--ease-out);place-items:center;font-size:1.5rem;line-height:1;display:grid;position:absolute}.menu-btn:hover{background:var(--surface-raised-hover)}.drawer-scrim{z-index:10;background:oklch(0% 0 0/.5);position:fixed;inset:0}.drawer{inset-block:0;background:var(--surface-panel);width:min(300px,85vw);box-shadow:-1px 0 0 var(--border-subtle);z-index:11;align-content:start;gap:var(--space-sm);padding:var(--space-md);padding-top:calc(var(--space-md) + env(safe-area-inset-top));padding-bottom:calc(var(--space-md) + env(safe-area-inset-bottom));visibility:hidden;transition:transform .2s var(--ease-out), visibility 0s linear .2s;display:grid;position:fixed;right:0;transform:translate(100%)}.drawer.is-open{visibility:visible;transition:transform .2s var(--ease-out);transform:translate(0)}.drawer-close{min-width:80px;margin-bottom:var(--space-xs);justify-self:end}.drawer-item{min-height:56px;color:var(--text-structural);font-size:1rem;text-decoration:none}@media (prefers-reduced-motion:reduce){.drawer{transition:none}}.keeper-foot{gap:var(--space-sm);display:grid}.last-event{text-align:center;color:var(--text-faint);min-height:1.3em;font-size:.85rem}.last-event strong{color:var(--text-muted);font-weight:600}.last-event--reject{color:var(--danger-text);text-shadow:0 0 .35em var(--lamp-red-dim);font-weight:600}.undo-btn{min-height:56px}.dup-bar{align-items:center;gap:var(--space-sm);background:var(--surface-raised);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);border:1px solid oklch(60% .12 75);grid-template-columns:1fr auto auto;font-size:.9rem;display:grid}.dup-bar .btn{min-height:48px;padding-inline:var(--space-sm);font-size:.85rem}.share-panel{gap:var(--space-md);background:var(--surface-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg);justify-items:center;display:grid}.share-qr{border-radius:var(--radius-md);padding:var(--space-sm);background:oklch(97% .005 165);display:grid}.share-qr img{width:min(52vw,220px);height:auto;image-rendering:pixelated;display:block}.share-code{color:var(--lamp-amber);text-shadow:0 0 .4em var(--lamp-amber-soft);letter-spacing:.12em;font-size:2rem}.share-hint{color:var(--text-muted);text-align:center;max-width:32ch;font-size:.9rem}.share-actions{gap:var(--space-sm);grid-auto-flow:column;width:100%;display:grid}.home{align-content:center;justify-items:center;gap:var(--space-2xl);min-height:100svh;padding:var(--space-xl) var(--space-md);padding-top:calc(var(--space-xl) + env(safe-area-inset-top));max-width:460px;margin-inline:auto;display:grid}.home-mark{justify-items:center;gap:var(--space-sm);text-align:center;display:grid}.home-mark .digits{color:var(--lamp-amber);text-shadow:0 0 .45em var(--lamp-amber-soft);font-size:clamp(2.6rem,11vw,3.6rem)}.home-mark h1{letter-spacing:.2em;text-transform:uppercase;color:var(--text-structural);margin:0;font-size:1.05rem;font-weight:600}.home-tagline{color:var(--text-muted);text-wrap:balance;max-width:34ch;margin:0;font-size:1rem}.home form,.home-create{gap:var(--space-sm);width:100%;display:grid}.field-row{gap:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.field{gap:var(--space-2xs);display:grid}.field label{letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--text-faint);font-size:.75rem;font-weight:600}input[type=text]{font:inherit;background:var(--surface-inset);color:var(--text-structural);border:1px solid var(--border-strong);border-radius:var(--radius-md);min-height:52px;padding:var(--space-xs) var(--space-sm);width:100%}input[type=text]::placeholder{color:var(--text-faint)}input[type=text]:focus-visible{outline:var(--focus-ring);outline-offset:0;border-color:var(--lamp-amber)}.btn--primary{background:var(--lamp-amber);border-color:var(--lamp-amber);color:oklch(20% .03 75)}.btn--primary:hover{background:oklch(86% .16 75)}.btn--primary:active{background:oklch(78% .17 75)}.recent{gap:var(--space-md);width:100%;display:grid}.recent-list{gap:var(--space-xs);margin:0;padding:0;list-style:none;display:grid}.recent-row{justify-content:space-between;align-items:center;gap:var(--space-sm);background:var(--surface-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);min-height:56px;color:var(--text-structural);transition:background-color var(--t-fast) var(--ease-out);font-weight:600;text-decoration:none;display:flex}.recent-row:hover{background:var(--surface-raised)}.recent-teams{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.recent-meta{align-items:center;gap:var(--space-xs);color:var(--text-muted);flex:none;font-size:.85rem;font-weight:400;display:flex}.recent-badge{text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--lamp-amber);border:1px solid oklch(50% .09 75);border-radius:999px;padding:1px 8px;font-size:.7rem;font-weight:600}.home-divider{align-items:center;gap:var(--space-sm);width:100%;color:var(--text-faint);letter-spacing:var(--track-caps);text-transform:uppercase;font-size:.8rem;display:flex}.home-divider:before,.home-divider:after{content:"";border-top:1px solid var(--border-subtle);flex:1}.join-row{gap:var(--space-sm);grid-template-columns:1fr auto;display:grid}.join-row input{text-transform:uppercase;letter-spacing:.18em;font-family:var(--font-digits);font-variation-settings:"ROND" 100;text-align:center;font-size:1.15rem;font-weight:600}.form-error{color:var(--danger-text);text-align:center;margin:0;font-size:.9rem}.gone{align-content:center;justify-items:center;gap:var(--space-md);text-align:center;min-height:100svh;padding:var(--space-xl);display:grid}.gone h1{letter-spacing:var(--track-caps);text-transform:uppercase;margin:0;font-size:1.3rem}.gone p{color:var(--text-muted);max-width:36ch;margin:0}.gone a{color:var(--lamp-amber)}@media (width>=720px){.keeper{max-width:640px}}
