[data-view].view-active{animation:viewFadeIn .2s ease forwards}@keyframes viewFadeIn{0%{opacity:0}to{opacity:1}}#view-scoring{width:100%;height:100vh;position:relative;overflow:hidden}.score-topbar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 16px;z-index:20;background:var(--bg-veil);border-bottom:2px solid var(--line)}.score-topbar .round-label{color:var(--ink-soft);font-family:var(--font-body);font-size:var(--fs-hand-sm);font-weight:700;letter-spacing:.03em}.game-called-pill{display:none;background:var(--highlight-soft);color:var(--ink);border:1.5px dashed var(--accent);padding:3px 12px;border-radius:4px;font-family:var(--font-body);font-size:var(--fs-caption);font-weight:800;letter-spacing:.08em}.game-called-pill.visible{display:inline-block}.score-halves{display:flex;width:100%;height:100%;padding-top:48px;padding-bottom:70px}.score-half{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;position:relative}.score-half-divider{width:0;border-left:2px dashed var(--line);align-self:stretch;margin-top:48px;margin-bottom:70px}.half-team-label{color:var(--ink-soft);font-family:var(--font-hand);font-size:var(--fs-hand-sm);font-weight:700;letter-spacing:.05em;margin-bottom:2px}.half-player-names{color:var(--muted);font-family:var(--font-body);font-size:1.25rem;font-weight:600;margin-bottom:8px;text-align:center;padding:0 12px}.half-score-num{font-family:var(--font-body);font-size:clamp(140px,23vw,250px);font-weight:700;color:var(--ink);line-height:1;transition:transform .15s cubic-bezier(.22,1,.36,1)}.half-score-num.score-pop{animation:scorePop .18s cubic-bezier(.22,1,.36,1)}@keyframes scorePop{0%{transform:scale(1)}50%{transform:scale(1.09)}to{transform:scale(1)}}.half-dec-btn{position:absolute;bottom:18px;left:50%;transform:translate(-50%);width:48px;height:48px;border-radius:50%;border:2px solid var(--border);background:transparent;color:var(--muted);font-size:1.6rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s}.half-dec-btn:hover{border-color:var(--sketch);color:var(--ink-soft)}.score-footer{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 16px;z-index:20;background:var(--bg-veil);border-top:2px solid var(--line)}#bunco-btn{background:var(--accent);color:var(--accent-contrast);border:2px solid var(--accent);font-family:var(--font-body);font-size:var(--fs-body);font-weight:900;letter-spacing:.05em;text-transform:uppercase;padding:11px 24px;border-radius:var(--wobble-sm);cursor:pointer;box-shadow:var(--shadow);transform:rotate(-1.5deg);transition:transform .15s,filter .15s}#bunco-btn:hover{filter:brightness(.94) saturate(1.1);transform:rotate(-1.5deg) translateY(-1px)}#bunco-btn:disabled{background:transparent;color:var(--very-muted);border:2px dashed var(--border);box-shadow:none;transform:none;cursor:not-allowed}#call-game-btn,#submit-scores-btn{background:transparent;border:2px solid var(--sketch);color:var(--ink-soft);font-family:var(--font-body);font-size:var(--fs-small);font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:9px 18px;border-radius:var(--wobble-sm);cursor:pointer;transition:background .15s,color .15s}#call-game-btn:hover,#submit-scores-btn:hover{background:var(--accent-soft);color:var(--ink)}#bunco-overlay{position:fixed;inset:0;z-index:100;pointer-events:none;display:none}#bunco-overlay.playing{display:block}#bunco-canvas{position:absolute;inset:0;width:100%;height:100%}#bunco-flash{position:absolute;inset:0;background:var(--highlight-soft);opacity:0}#bunco-flash.go{animation:flashFade .4s ease forwards}@keyframes flashFade{0%{opacity:1}to{opacity:0}}#bunco-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}#bunco-text{font-family:var(--font-hand);font-size:clamp(48px,10vw,72px);font-weight:700;color:var(--accent);border:5px solid var(--accent);border-radius:var(--wobble-sm);padding:2px 26px;background:var(--bg-veil);transform:scale(0);opacity:0;line-height:1.15}#bunco-text.pop{animation:buncoTextPop .5s cubic-bezier(.17,.67,.3,1.4) forwards}@keyframes buncoTextPop{0%{transform:scale(0) rotate(-30deg);opacity:0}60%{transform:scale(1.12) rotate(-1deg);opacity:1}to{transform:scale(1) rotate(-4deg);opacity:1}}#bunco-dice{display:flex;gap:14px;transform:translateY(18px);opacity:0}#bunco-dice.slide-in{animation:diceSlideUp .4s .45s ease forwards}@keyframes diceSlideUp{to{transform:translateY(0);opacity:1}}.bunco-die{width:52px;height:52px;background:var(--surface);color:var(--ink);border:2px solid var(--sketch);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:28px;box-shadow:var(--shadow)}.bunco-die.shake{animation:dieShake .5s .65s ease both}@keyframes dieShake{0%,to{transform:rotate(0)}20%{transform:rotate(-12deg) scale(1.1)}40%{transform:rotate(10deg) scale(1.15)}60%{transform:rotate(-8deg) scale(1.1)}80%{transform:rotate(6deg)}}#bunco-pts{font-family:var(--font-body);font-size:var(--fs-body);font-weight:800;color:var(--ink-soft);opacity:0}#bunco-pts.fade-in{animation:ptsFadeIn .3s .95s ease forwards}@keyframes ptsFadeIn{to{opacity:1}}.waiting-code-display{font-family:var(--font-body);font-size:clamp(40px,12vw,64px);font-weight:700;letter-spacing:.12em;color:var(--ink);line-height:1}.live-count-pill{display:flex;align-items:center;gap:10px;background:var(--highlight-soft);border:1.5px dashed var(--sketch);border-radius:var(--wobble-sm);padding:10px 14px;font-family:var(--font-body);font-size:var(--fs-small);color:var(--ink);font-weight:700}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0;animation:livePulse 1.5s ease-in-out infinite}@keyframes livePulse{0%,to{opacity:.4}50%{opacity:1}}.table-dot{width:10px;height:10px;border-radius:50%;background:var(--border);transition:background .3s ease}.table-dot.submitted{background:var(--accent)}.table-dot.waiting{animation:dotPulse 1.5s ease-in-out infinite}@keyframes dotPulse{0%,to{opacity:.3}50%{opacity:1}}.submitted-check{width:64px;height:64px;border-radius:50%;background:var(--accent-soft);border:2px solid var(--accent);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:1.75rem;margin:0 auto 1.25rem}.seat-info-card{background:var(--accent-soft);border:1.5px solid var(--accent);border-radius:var(--wobble-sm);padding:16px}.standings-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:6px;margin-bottom:6px;background:var(--surface);border:1px solid var(--border);font-family:var(--font-body)}.standings-row-first{background:linear-gradient(100deg,transparent .5%,var(--highlight-soft) 2.5%,var(--highlight-soft) 97.5%,transparent 99.5%),var(--surface);border:1px solid var(--highlight)}.standings-rank{font-size:var(--fs-caption);font-weight:800;color:var(--very-muted);width:18px;flex-shrink:0}.standings-rank-1{color:var(--accent)}.standings-name{font-size:var(--fs-small);font-weight:700;color:var(--text);flex:1}.standings-stat{font-size:var(--fs-small);font-weight:800;color:var(--muted);min-width:28px;text-align:center}.standings-stat-highlight{color:var(--text)}.bunco-picker-overlay{position:fixed;inset:0;z-index:40;background:var(--overlay-veil);display:flex;align-items:center;justify-content:center;padding:16px}.bunco-picker-card{background:var(--surface);border:2px solid var(--sketch);border-radius:var(--wobble-sm);box-shadow:var(--shadow);padding:20px;width:100%;max-width:340px;text-align:center}.bunco-picker-title{font-weight:700;font-size:1.5rem;margin-bottom:14px}.bunco-picker-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.bunco-picker-player{background:var(--accent);color:var(--accent-contrast);border:2px solid var(--accent);font-family:var(--font-body);font-size:var(--fs-body);font-weight:800;padding:12px 16px;border-radius:var(--wobble-sm);cursor:pointer}.bunco-picker-cancel{background:transparent;border:none;color:var(--muted);font-family:var(--font-body);font-size:var(--fs-small);font-weight:700;padding:8px 16px;cursor:pointer}
