:root{--bg: #1c2a38;--panel: #24374a;--card: #f3ead8;--card-ink: #22252c;--accent: #ffd166;--good: #7fc97f;--spring: cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box;margin:0;padding:0;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}html,body,#app,.app{height:100%;overflow:hidden}body{background:var(--bg);color:var(--card);font-family:-apple-system,Segoe UI,system-ui,sans-serif;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}button{font:inherit;border:none;cursor:pointer}button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.start{position:relative;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.2rem;text-align:center}.start__title{font-size:3.2rem}.start__tag{font-size:1.3rem;opacity:.85}.start__bands{display:flex;gap:1rem;margin-top:1rem}.band-btn{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:1.2rem 1.4rem;min-width:10.5rem;min-height:44pt;border-radius:1.2rem;background:var(--card);color:var(--card-ink);transition:transform .25s var(--spring)}.band-btn:hover{transform:scale(1.05)}.band-btn:active{transform:scale(.95)}.band-btn__emoji{font-size:2.4rem}.band-btn__label{font-size:1.5rem;font-weight:800}.band-btn__sub{font-size:1rem;opacity:.75}.start__footer{position:absolute;bottom:calc(env(safe-area-inset-bottom) + .6rem);left:.8rem;right:.8rem;display:flex;justify-content:space-between;font-size:.75rem;opacity:.6}.offline-badge--ok{color:var(--good)}.game{display:flex;height:100%}.game__board-area{flex:2;position:relative;display:flex;align-items:center;justify-content:center;padding:.75rem}.board{height:min(92vh,100%);width:min(92vh,100%);max-width:100%;transition:opacity .4s ease}.board--dimmed{filter:grayscale(.7) brightness(.55);opacity:.9;pointer-events:none}.dart-marker circle{animation:dart-pop .35s var(--spring)}@keyframes dart-pop{0%{transform:scale(2.6)}to{transform:scale(1)}}.band-chip{position:absolute;top:.8rem;left:.8rem;background:#00000059;border-radius:2rem;padding:.4rem 1rem;font-size:1rem;z-index:2}.final-turn-banner{position:absolute;top:.8rem;left:50%;transform:translate(-50%);background:var(--accent);color:var(--card-ink);font-weight:800;font-size:1.2rem;padding:.5rem 1.2rem;border-radius:2rem;z-index:2;animation:banner-in .5s var(--spring)}@keyframes banner-in{0%{transform:translate(-50%) scale(.4)}to{transform:translate(-50%) scale(1)}}.tap-hint{position:absolute;bottom:.9rem;left:0;right:0;text-align:center;font-size:1.4rem;letter-spacing:.12em;opacity:.8;pointer-events:none}.exit-btn{position:absolute;top:.8rem;right:.8rem;width:44pt;height:44pt;border-radius:50%;background:#00000059;color:var(--card);font-size:1.1rem;z-index:2}.game__panel{flex:1;display:flex;flex-direction:column;gap:.7rem;padding:.9rem;background:var(--panel);min-width:300px;min-height:0;overflow-y:auto}.score-card{background:var(--card);color:var(--card-ink);border-radius:1rem;text-align:center;padding:.6rem}.score-card__label{font-size:1rem;text-transform:uppercase;letter-spacing:.1em;opacity:.6}.score-card__value{font-size:min(4.2rem,9vh);font-weight:900;line-height:1.05;font-variant-numeric:tabular-nums}.score-card__note{font-size:1rem;opacity:.65}.darts-row{display:flex;gap:.5rem}.dart-slot{flex:1;border:2px dashed rgba(243,234,216,.35);border-radius:.8rem;padding:.4rem;text-align:center;font-size:1rem;transition:border-color .3s}.dart-slot--filled{border-style:solid;border-color:var(--accent)}.dart-slot b{display:block;font-size:1.3rem;color:var(--accent)}.dart-slot__label{opacity:.7}.stage{flex:1;display:flex;align-items:center;justify-content:center;transition:transform .35s var(--spring)}.stage--focus{transform:scale(1.04)}.turn-info{opacity:.6;font-size:1.1rem}.question-card{width:100%;background:var(--card);color:var(--card-ink);border-radius:1.2rem;padding:1rem;text-align:center;display:flex;flex-direction:column;gap:.7rem;animation:card-in .35s var(--spring)}@keyframes card-in{0%{transform:scale(.85);opacity:0}}.question-card--retry{animation:gentle-bounce .45s var(--spring)}@keyframes gentle-bounce{30%{transform:translateY(-6px)}}.question-card__prompt{font-size:2rem;font-weight:900}.question-card__warm{color:#9a4517;font-weight:700}.question-card__hint{font-size:1.4rem;font-weight:700;color:#0072b2}.question-card__choices{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.choice-btn{min-height:80pt;border-radius:1rem;background:#fff;border:3px solid var(--card-ink);font-size:2.2rem;font-weight:900;transition:transform .2s var(--spring)}.choice-btn:active{transform:scale(.94)}.hint-btn{min-height:44pt;border-radius:2rem;background:transparent;border:2px solid rgba(34,37,44,.4);font-size:1.05rem}.reveal,.bust-card{display:block;width:100%;color:inherit;background:var(--card);color:var(--card-ink);border-radius:1.2rem;padding:1.4rem 1rem;text-align:center;cursor:pointer;animation:card-in .35s var(--spring)}.reveal__title,.bust-card__title{font-size:1.5rem;font-weight:900}.reveal__sum{font-size:2.4rem;font-weight:900;margin:.8rem 0;color:#0072b2}.reveal__tap,.bust-card__tap{font-size:1rem;opacity:.6}.bust-card__body{font-size:1.3rem;margin:.7rem 0}.medal-row{text-align:center;font-size:1.5rem;min-height:2.2rem}.medal-row__points{font-size:1rem;margin-left:.6rem;opacity:.8}.end-screen{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;text-align:center;animation:card-in .5s var(--spring)}.end-screen__medal{font-size:4rem;font-weight:900}.end-screen__sums{font-size:1.8rem;color:var(--accent)}.end-screen__darts{font-size:1.3rem;opacity:.9}.end-screen__sticker{margin-top:.6rem;padding:.6rem 1.4rem;border:2px dashed var(--accent);border-radius:2rem;font-size:1.1rem}.end-screen__buttons{display:flex;gap:1rem;margin-top:1rem}.big-btn{min-height:44pt;padding:.8rem 2.2rem;border-radius:2rem;background:var(--accent);color:var(--card-ink);font-size:1.4rem;font-weight:800;transition:transform .25s var(--spring)}.big-btn:active{transform:scale(.95)}.big-btn--quiet{background:transparent;border:2px solid var(--accent);color:var(--accent)}.numpad{display:flex;flex-direction:column;gap:.5rem}.numpad__display{min-height:3.2rem;border:3px solid var(--card-ink);border-radius:.8rem;background:#fff;font-size:2.2rem;font-weight:900;display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}.numpad__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem}.numpad__key{min-height:44pt;height:min(64pt,8vh);border-radius:.8rem;background:#fff;border:2px solid var(--card-ink);font-size:1.8rem;font-weight:800;transition:transform .2s var(--spring)}.numpad__key:active{transform:scale(.94)}.numpad__key--go{background:var(--good)}.numpad__key--go:disabled{opacity:.4}.numpad__key--back{background:#f0dcc3}.game--freeplay .game__board-area{flex:1}.star-trail{position:absolute;top:3.6rem;left:0;right:0;text-align:center;font-size:2rem;letter-spacing:.2em;z-index:2;min-height:2.6rem}.star-trail__count{display:block;font-size:1rem;letter-spacing:.05em;opacity:.75}.coach-line{background:var(--accent);color:var(--card-ink);font-weight:800;font-size:1.05rem;border-radius:1rem;padding:.6rem 1rem;margin-bottom:.8rem;animation:card-in .4s var(--spring)}.question-card__prompt--subtract{font-size:1.5rem}.question-card__from{display:block;font-size:2rem}.hint-stack{display:inline-flex;flex-direction:column;align-items:flex-end;font-variant-numeric:tabular-nums;line-height:1.35}.hint-stack--column{margin-top:.3rem;font-size:1.6rem;border-top:none}.hint-stack__row--sum{border-top:3px solid currentColor;margin-top:.15rem;padding-top:.15rem}.debug-overlay{position:fixed;bottom:0;left:0;z-index:200;background:#000000bf;color:#7fc97f;font-family:monospace;font-size:11px;padding:2px 8px;pointer-events:none}.reveal__sum>div{line-height:1.4}.corner{position:fixed;width:18vmin;height:18vmin;z-index:5}.corner--tl{top:0;left:0}.corner--bl{bottom:0;left:0}.attract{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;cursor:pointer}.attract__board{width:min(55vh,60vw)}.attract__cta{font-size:2.6rem;font-weight:900;letter-spacing:.2em;color:var(--accent);animation:match-pulse 1s ease-in-out infinite}.idle-prompt{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#1c2a38e6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;pointer-events:none}.idle-prompt__title{font-size:2.6rem;font-weight:900}.idle-prompt__sub{font-size:1.4rem;opacity:.85}.rotate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.rotate-overlay__icon{font-size:4rem}.rotate-overlay__text{font-size:1.5rem}.match-dart-label{position:absolute;bottom:3.2rem;left:50%;transform:translate(-50%);color:var(--accent);font-size:2rem;font-weight:900;letter-spacing:.25em;z-index:3;animation:match-pulse .9s ease-in-out infinite;pointer-events:none;text-shadow:0 2px 12px rgba(0,0,0,.6)}@keyframes match-pulse{50%{opacity:.55;transform:translate(-50%) scale(1.06)}}.vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse at center,transparent 45%,rgba(8,12,18,.65) 100%);animation:vignette-in .6s ease}@keyframes vignette-in{0%{opacity:0}}.board-flash{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2;background:radial-gradient(circle at center,rgba(255,209,102,.45) 0%,transparent 60%);animation:flash-out .45s ease-out forwards}@keyframes flash-out{0%{opacity:1;transform:scale(.7)}to{opacity:0;transform:scale(1.25)}}.streak-flame{color:var(--accent);font-weight:900;animation:match-pulse .8s ease-in-out infinite;display:inline-block}.players-toggle{display:flex;gap:.5rem}.players-btn{min-height:44pt;padding:.4rem 1.4rem;border-radius:2rem;background:transparent;border:2px solid rgba(243,234,216,.4);color:var(--card);font-size:1.05rem;font-weight:700}.players-btn--on{background:var(--accent);border-color:var(--accent);color:var(--card-ink)}.band-chip__player{font-weight:800}.interstitial{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;cursor:pointer;animation:card-in .4s var(--spring)}.interstitial__title{font-size:2.2rem;font-weight:900}.interstitial__player{font-size:3rem;font-weight:900;color:var(--accent)}.interstitial__sub{font-size:1.3rem;opacity:.8}.ceremony-1{animation:ceremony-pop .6s var(--spring) both}.ceremony-2{animation:ceremony-pop .6s var(--spring) .45s both}.ceremony-3{animation:ceremony-pop .6s var(--spring) .9s both}@keyframes ceremony-pop{0%{opacity:0;transform:scale(.6)}}.end-screen__winner{font-size:2.6rem;font-weight:900;color:var(--accent)}.end-screen__duo{display:flex;gap:2.5rem}.end-screen__col{display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:1rem 1.4rem;border-radius:1.2rem;border:3px solid transparent}.end-screen__col--winner{border-color:var(--accent);background:#ffd16614}.end-screen__col .end-screen__medal{font-size:2.4rem}.end-screen__col .end-screen__sums{font-size:1.2rem}.end-screen__col .end-screen__darts{font-size:1rem}.end-screen__who{font-size:1.3rem;font-weight:800}.learn-btn{min-height:44pt;padding:.5rem 1.6rem;border-radius:2rem;background:transparent;border:2px dashed rgba(243,234,216,.5);color:var(--card);font-size:1.1rem}.tutorial{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.4rem;padding:2rem;text-align:center}.tutorial--quiz{flex-direction:row;text-align:left;gap:1rem}.tutorial__quiz-side{flex:1;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.tutorial__board{flex:1.4;display:flex;align-items:center;justify-content:center;min-height:0}.tutorial__board .board{height:min(88vh,100%)}.tutorial__title{font-size:2.4rem}.tutorial__body{max-width:34rem;text-align:left;display:flex;flex-direction:column;gap:.9rem}.tutorial__line{font-size:1.45rem;line-height:1.5}.tutorial__prompt{font-size:1.5rem;line-height:1.4;color:var(--accent);font-weight:700}.tutorial__feedback{font-size:1.3rem;background:var(--card);color:var(--card-ink);border-radius:1rem;padding:.8rem 1rem;animation:card-in .35s var(--spring)}.tutorial__nav{display:flex;align-items:center;gap:1.2rem;margin-top:.5rem}.tutorial__dots{letter-spacing:.3em;opacity:.7}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.ceremony-1,.ceremony-2,.ceremony-3{opacity:1;transform:none}.exit-btn--holding{background:var(--accent)!important;color:var(--card-ink)!important}}html.no-flexgap .start>*+*{margin-top:1.2rem}html.no-flexgap .band-btn>*+*{margin-top:.3rem}html.no-flexgap .game__panel>*+*{margin-top:.7rem}html.no-flexgap .question-card>*+*{margin-top:.7rem}html.no-flexgap .end-screen>*+*{margin-top:1rem}html.no-flexgap .numpad>*+*{margin-top:.5rem}html.no-flexgap .attract>*+*{margin-top:1.5rem}html.no-flexgap .idle-prompt>*+*{margin-top:.8rem}html.no-flexgap .rotate-overlay>*+*{margin-top:1rem}html.no-flexgap .interstitial>*+*{margin-top:.8rem}html.no-flexgap .end-screen__col>*+*{margin-top:.6rem}html.no-flexgap .tutorial>*+*{margin-top:1.4rem}html.no-flexgap .tutorial__quiz-side>*+*{margin-top:1rem}html.no-flexgap .tutorial__body>*+*{margin-top:.9rem}html.no-flexgap .start__bands>*+*{margin-left:1rem}html.no-flexgap .darts-row>*+*{margin-left:.5rem}html.no-flexgap .end-screen__buttons>*+*{margin-left:1rem}html.no-flexgap .players-toggle>*+*{margin-left:.5rem}html.no-flexgap .end-screen__duo>*+*{margin-left:2.5rem}html.no-flexgap .tutorial__nav>*+*{margin-left:1.2rem}html.no-flexgap .tutorial--quiz>*+*{margin-top:0;margin-left:1rem}.darts-left{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;z-index:2;pointer-events:none}.darts-left__dart{font-size:2.2rem;line-height:1.15;transform:rotate(135deg);transition:opacity .25s ease;text-shadow:0 2px 6px rgba(0,0,0,.45)}.darts-left__dart--spent{opacity:.18}.group-scores{list-style:none;margin:.4rem 0 0;padding:0;max-height:52vh;overflow-y:auto;font-size:2rem;font-weight:800;font-variant-numeric:tabular-nums}.group-scores li{padding:.15rem 0;border-bottom:1px solid rgba(0,0,0,.12)}.group-scores__latest{color:var(--accent);font-size:2.6rem}.confirm-exit{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a1018b8;display:flex;align-items:center;justify-content:center;z-index:6}.confirm-exit__card{background:var(--card);color:var(--card-ink);border-radius:1.2rem;padding:1.6rem 2rem;text-align:center;max-width:26rem}.confirm-exit__title{font-size:1.6rem;font-weight:900;margin-bottom:1.1rem}.question-card__explainer{font-size:1.05rem;font-weight:700;margin-bottom:.3rem;opacity:.85}.end-screen__legs{font-size:1.4rem;opacity:.85}.interstitial--leg .end-screen__buttons{margin-top:1.2rem}.board-highlight{animation:hl-pulse 1.4s ease-in-out infinite;pointer-events:none}@keyframes hl-pulse{0%,to{opacity:.25}50%{opacity:.9}}@media(prefers-reduced-motion:reduce){.board-highlight{animation:none;opacity:.7}}.tutorial__progress{font-size:1rem;opacity:.7}
