*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100dvh;overflow:hidden;max-width:100vw}#root{display:flex;flex-direction:column}#root>*{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 16px)}:root{--bg: var(--theme-bg, #ffffff);--bg-muted: var(--theme-bg-muted, #f8fafc);--bg-soft: var(--theme-bg-soft, #f1f5f9);--fg: var(--theme-fg, #0f172a);--fg-dim: var(--theme-fg-dim, #6b7280);--border: var(--theme-border, #e5e7eb);--accent: var(--theme-accent, #111827);--success: var(--theme-success, #16a34a);--error: var(--theme-error, #dc2626);--warning: var(--theme-warning, #d97706);--shadow-1: 0 1px 2px rgba(0,0,0,.04);--shadow-2: 0 10px 20px rgba(0,0,0,.03);--radius: 14px}[data-theme=arcade]{--shadow-1: 0 1px 2px rgba(0,0,0,.6);--shadow-2: 0 10px 20px rgba(0,0,0,.35)}[data-theme=arcade] body{background:#0a0a0a;color:#e5e7eb}[data-theme=arcade] .g-bigNum,[data-theme=arcade] .arcade-score{font-family:Orbitron,monospace;letter-spacing:2px;text-shadow:0 0 10px rgba(249,115,22,.5)}.g-page{display:grid;gap:14px;padding:12px;background:var(--bg);color:var(--fg)}.g-header{display:flex;justify-content:space-between;align-items:center}.g-title{margin:0;font-weight:800;letter-spacing:.2px}.g-btn{border:1px solid var(--border);background:var(--bg);color:var(--fg);padding:8px 12px;border-radius:10px;cursor:pointer;transition:transform .05s ease,background .2s ease,border-color .2s ease}.g-btn:disabled{opacity:.6;cursor:not-allowed}.g-btn:hover:not(:disabled){background:var(--bg-muted)}.g-btn:active:not(:disabled){transform:translateY(1px)}.g-chipRow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px}.g-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--bg-muted);border-radius:999px;padding:4px 10px}.g-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.g-card{border:1px solid var(--border);border-radius:var(--radius);padding:12px;background:var(--bg);box-shadow:var(--shadow-1),var(--shadow-2);display:grid;gap:10px}.g-card.is-active{background:linear-gradient(180deg,var(--bg-soft),var(--bg) 60%)}.g-nameRow{display:flex;justify-content:space-between;align-items:baseline}.g-name{font-weight:900}.g-meta{font-size:12px;color:var(--fg-dim)}.g-mainRow{display:grid;grid-template-columns:1fr 120px;align-items:start;gap:10px}.g-bigNum{font-size:clamp(28px,7vw,38px);font-weight:900;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:.5px}.g-dartsCol{text-align:right;min-height:60px;display:grid;gap:6px}.g-dartPill{display:inline-block;padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:var(--bg);font-size:13px}.g-dartPill.faint{background:var(--bg-soft)}.g-sub,.g-avg{font-size:12px;color:var(--fg-dim)}.g-tableWrap{overflow-x:auto;border:1px solid var(--border);border-radius:12px;background:var(--bg)}.g-table{border-collapse:collapse;min-width:520px;width:100%}.g-th,.g-tdh{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg);z-index:2}.g-td{padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--border) 90%,transparent);color:var(--fg)}.g-toolbar{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:599px){.g-toolbar{gap:4px}.g-toolbar .g-btn{padding:6px 8px;font-size:12px}}.g-dim{opacity:.7}.g-winner{color:var(--success);font-weight:800}@keyframes scoreFlash{0%{opacity:0;transform:scale(.8)}10%{opacity:1;transform:scale(1)}60%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.05)}}.scoreFlash{animation:scoreFlash 1.1s ease-out forwards}.g-overlay{position:fixed;inset:0;background:color-mix(in srgb,#000 45%,transparent);display:grid;place-items:center;padding:14px;z-index:9999}.g-modal{width:min(760px,96vw);max-height:90vh;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);box-shadow:var(--shadow-1),var(--shadow-2);padding:14px;display:grid;gap:12px}.g-modalHeader{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.g-modalTitle{font-weight:900;font-size:16px}.g-modalSub{font-size:12px;color:var(--fg-dim);margin-top:4px}.g-summaryGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.g-summaryTile{border:1px solid var(--border);border-radius:12px;background:var(--bg-muted);padding:10px 12px;display:grid;gap:4px}.g-k{font-size:12px;color:var(--fg-dim);font-weight:700;letter-spacing:.2px}.g-v{font-size:14px;font-weight:900;color:var(--fg);font-variant-numeric:tabular-nums}.g-miniTableWrap{border:1px solid var(--border);border-radius:12px;overflow-x:auto;background:var(--bg)}.g-miniTable{width:100%;border-collapse:collapse;min-width:560px;font-size:13px}.g-miniTable th,.g-miniTable td{padding:10px 12px;border-bottom:1px solid var(--border)}.g-miniTable th{text-align:left;font-size:12px;color:var(--fg-dim);letter-spacing:.2px;text-transform:uppercase;position:sticky;top:0;background:var(--bg);z-index:2}.g-details{border:1px solid var(--border);border-radius:12px;background:var(--bg);padding:12px}.g-detailsTitle{font-weight:900;margin-bottom:10px}.g-visitList{display:grid;gap:8px}.g-visit{border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:var(--bg);display:grid;gap:6px}.g-visit.is-bust{border-color:color-mix(in srgb,#dc2626 55%,var(--border));background:color-mix(in srgb,#dc2626 8%,var(--bg))}.g-visitTop,.g-visitBottom{display:flex;justify-content:space-between;gap:10px;align-items:baseline;flex-wrap:wrap}.g-legCard{border:1px solid var(--border);border-radius:12px;padding:12px;background:var(--bg);display:grid;gap:10px}.g-legCardTop{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:baseline}.g-legCardGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.g-legMini{border:1px solid var(--border);border-radius:12px;background:var(--bg-muted);padding:10px 12px;display:grid;gap:4px}.g-subDetails{margin-top:6px}@keyframes scorePopIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}40%{transform:translate(-50%,-50%) scale(1)}80%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-60%) scale(.95)}}.g-scorePopup{position:fixed;top:45%;left:50%;transform:translate(-50%,-50%);z-index:9999;pointer-events:none;font-size:clamp(48px,14vw,72px);font-weight:900;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.5),0 0 40px rgba(249,115,22,.4);animation:scorePopIn .8s ease-out forwards;font-variant-numeric:tabular-nums}.g-scorePopup.bust{color:#ef4444;text-shadow:0 2px 20px rgba(0,0,0,.5),0 0 40px rgba(239,68,68,.4)}[data-theme=arcade] .g-scorePopup{font-family:Orbitron,monospace;letter-spacing:3px;text-shadow:0 0 30px rgba(249,115,22,.7),0 0 60px rgba(249,115,22,.3)}.game-arcade-chip{background:#1a1a1a;border:1px solid #333;color:#9ca3af;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600}.game-arcade-chips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;background:#0f0f0f;padding:8px 16px}.game-flex-center{display:flex;align-items:center;justify-content:center}.game-flex-row{display:flex;align-items:center;gap:8px}.game-overlay{position:fixed;inset:0;background:#00000080;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.game-modal{background:#fff;border-radius:16px;padding:24px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.game-stats-table{width:100%;border-collapse:collapse;font-size:13px}.game-stats-table th{text-align:left;padding:6px 8px;border-bottom:2px solid #e5e7eb;font-weight:600;color:#475569}.game-stats-table th.game-th-center{text-align:center}.game-stats-table td{padding:6px 8px;border-bottom:1px solid #f1f5f9}.game-stats-table td.game-td-center{text-align:center}.game-stats-table tr:last-child td{border-bottom:none}.game-summary-panel{background:#f1f5f9;border-radius:12px;padding:12px 16px;text-align:center;margin-bottom:16px}.game-hint-banner{border-radius:12px;padding:10px 16px;margin-bottom:12px;text-align:center}.game-hint-banner.warning{background:#fef3c7;border:2px solid #f59e0b}.game-hint-banner.info{background:#dbeafe;border:2px solid #3b82f6}.game-tab-btn{flex:1;padding:8px 12px;border-radius:6px;border:none;font-weight:600;font-size:12px;cursor:pointer}.game-tab-btn.active{background:#111827;color:#fff}.game-tab-btn.inactive{background:#e5e7eb;color:#374151}.game-btn-primary{width:100%;padding:14px 24px;border-radius:12px;border:none;background:#111827;color:#fff;font-weight:700;font-size:16px;cursor:pointer}.game-dart-slot{font-size:12px;padding:2px 6px;border-radius:4px;min-width:32px;text-align:center}.game-dart-slot.empty{color:#9ca3af;background:#f1f5f9;border:1px solid #e5e7eb}.game-dart-slot.filled{font-weight:700;color:#f97316;background:#1c1c1c;border:1px solid #f97316}.game-meta-row{background:#f8fafc;border-radius:8px;padding:8px 16px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}.game-section{margin-bottom:16px}.screen-enter{animation:screenFadeIn .25s ease-out}@keyframes screenFadeIn{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.screen-slide-enter{animation:screenSlideIn .3s ease-out}.screen-exit{animation:screenFadeOut .15s ease-in forwards}@keyframes screenFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.screen-slide-in{animation:screenSlideIn .3s ease-out}@keyframes screenSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.player-switch{animation:playerSwitch .3s ease-out}@keyframes playerSwitch{0%{opacity:.7;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.score-pop{animation:scorePop .4s cubic-bezier(.34,1.56,.64,1)}@keyframes scorePop{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.dart-slot-fill{animation:dartSlotFill .2s ease-out}@keyframes dartSlotFill{0%{transform:scale(0)}to{transform:scale(1)}}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}[data-theme=arcade] :focus-visible{outline-color:#f97316}@media(max-width:599px){.g-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px}.g-card{padding:8px;gap:6px}.g-mainRow{grid-template-columns:1fr 60px;gap:6px}.g-bigNum{font-size:26px}.g-nameRow{font-size:14px}.g-meta,.g-sub,.g-avg{font-size:11px}.g-chart-mobile-hide,.g-player-darts-col{display:none!important}.g-player-grid{grid-template-columns:1fr!important;gap:4px!important}.g-page{gap:8px;padding:8px}.g-modal{padding:8px;width:min(760px,100vw - 16px)}.g-modalHeader{gap:6px}.g-modalTitle{font-size:14px}.g-modalSub{display:none}}
