.api-notice[data-v-dc45846f]{position:fixed;top:calc(1rem + env(safe-area-inset-top,0px));right:calc(1rem + env(safe-area-inset-right,0px));z-index:10060;display:flex;align-items:flex-start;gap:.65rem;width:min(28rem,calc(100vw - 2rem));margin:0;padding:.75rem .85rem;border-radius:var(--radius, 12px);border:1px solid transparent;box-shadow:0 10px 30px #0000002e;background:var(--surface, #fff);color:var(--text, #111)}.api-notice--error[data-v-dc45846f]{border-color:#ef444459;background:#fef2f2;color:#7f1d1d}.api-notice--info[data-v-dc45846f]{border-color:#3b82f659;background:#eff6ff;color:#1e3a8a}.api-notice-text[data-v-dc45846f]{margin:0;flex:1;font-size:.88rem;line-height:1.4;font-weight:600}.api-notice-dismiss[data-v-dc45846f]{flex-shrink:0;border:0;background:none;color:inherit;font-size:1.2rem;line-height:1;cursor:pointer;opacity:.7}.api-notice-enter-active[data-v-dc45846f],.api-notice-leave-active[data-v-dc45846f]{transition:opacity .18s ease,transform .18s ease}.api-notice-enter-from[data-v-dc45846f],.api-notice-leave-to[data-v-dc45846f]{opacity:0;transform:translate(.5rem)}.error-alert-backdrop[data-v-ba793650]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10150;background:var(--modal-backdrop, rgba(2, 6, 14, .85));display:grid;place-items:center;padding:1rem}.error-alert[data-v-ba793650]{width:min(100%,26rem);max-height:min(80dvh,32rem);display:flex;flex-direction:column;gap:.85rem;padding:1.1rem 1.15rem;background:var(--surface, #ffffff);border:1px solid var(--surface-border);box-shadow:var(--shadow)}.error-alert-title[data-v-ba793650]{margin:0;font-size:1.05rem;line-height:1.3}.error-alert-body[data-v-ba793650]{margin:0;flex:1;min-height:0;overflow:auto;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;line-height:1.45;color:var(--text);background:var(--fill-subtle, rgba(0, 0, 0, .04));border-radius:8px;padding:.75rem}.error-alert-ok[data-v-ba793650]{width:100%}.action-spinner[data-v-b72c63e2]{display:inline-block;width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:999px;animation:action-spin-b72c63e2 .65s linear infinite;flex-shrink:0}@keyframes action-spin-b72c63e2{to{transform:rotate(360deg)}}.busy-btn[data-v-9e7cac33]{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:var(--radius-sm);padding:.7rem .95rem;font-weight:700;font-size:.9rem;border:1px solid transparent;white-space:nowrap;cursor:pointer}.busy-btn.block[data-v-9e7cac33]{width:100%}.primary-btn[data-v-9e7cac33]{background:linear-gradient(135deg,#22c55e,#16a34a);color:#052e16}.secondary-btn[data-v-9e7cac33]{background:var(--secondary-btn-bg);border-color:var(--secondary-btn-border);color:var(--secondary-btn-text)}.ghost-btn[data-v-9e7cac33]{background:var(--ghost-fill);border-color:var(--surface-border);color:var(--text)}.danger-btn[data-v-9e7cac33]{background:linear-gradient(135deg,var(--danger),var(--danger-deep));border-color:var(--danger-deep);color:#fff}.danger-btn[data-v-9e7cac33]:disabled{opacity:.72}.busy-btn[data-v-9e7cac33]:disabled{cursor:wait;opacity:.88}.busy-btn.is-busy[data-v-9e7cac33]{pointer-events:none}.busy-btn-spinner[data-v-9e7cac33]{width:.95em;height:.95em}.quick-unlock-backdrop[data-v-b1951714]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10050;display:grid;place-items:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:#00000080}.quick-unlock-card[data-v-b1951714]{width:min(100%,24rem);padding:1.25rem 1.2rem 1.1rem;border-radius:var(--radius-md, .85rem);border:1px solid var(--surface-border);background:var(--surface-elevated, var(--surface));box-shadow:0 18px 48px #00000047}.quick-unlock-title[data-v-b1951714]{margin:0 0 .65rem;font-size:1.15rem;line-height:1.3}.quick-unlock-copy[data-v-b1951714]{margin:0 0 .55rem;font-size:.92rem;line-height:1.5}.quick-unlock-copy.muted[data-v-b1951714]{color:var(--text-muted);font-size:.85rem}.quick-unlock-actions[data-v-b1951714]{display:flex;flex-direction:column;gap:.55rem;margin-top:1rem}.quick-unlock-opt-in-enter-active[data-v-b1951714],.quick-unlock-opt-in-leave-active[data-v-b1951714]{transition:opacity .18s ease}.quick-unlock-opt-in-enter-from[data-v-b1951714],.quick-unlock-opt-in-leave-to[data-v-b1951714]{opacity:0}.link-open-backdrop[data-v-99eaffd8]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10050;display:grid;place-items:center;padding:1rem;background:#00000073}.link-open-card[data-v-99eaffd8]{width:min(22rem,100%);padding:1rem 1.1rem}.link-open-card h3[data-v-99eaffd8]{margin:0 0 .35rem;font-size:1.05rem}.link-open-url[data-v-99eaffd8]{margin:0 0 1rem;font-size:.78rem;word-break:break-all}.link-open-actions[data-v-99eaffd8]{display:flex;flex-wrap:wrap;gap:.5rem}.native-update[data-v-00036969]{position:fixed;left:50%;bottom:calc(.85rem + env(safe-area-inset-bottom,0px));z-index:9998;display:flex;align-items:center;gap:.55rem;max-width:min(22rem,calc(100vw - 1.5rem));padding:.45rem .55rem .45rem .75rem;transform:translate(-50%);border-radius:999px;color:#e2e8f0;background:#0f172aeb;border:1px solid rgb(148 163 184 / .35);box-shadow:0 10px 30px #0f172a47;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.8125rem}html.is-native{bottom:calc(4.35rem + env(safe-area-inset-bottom,0px))}@media(min-width:960px){html.is-native{bottom:calc(.85rem + env(safe-area-inset-bottom,0px))}}.native-update--quiet[data-v-00036969]{opacity:.72}.native-update__text[data-v-00036969]{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.native-update__action[data-v-00036969]{flex:0 0 auto;border:0;border-radius:999px;padding:.35rem .7rem;font:inherit;font-weight:700;color:#0f172a;background:#84cc16;cursor:pointer}.native-update__dismiss[data-v-00036969]{flex:0 0 auto;width:1.6rem;height:1.6rem;border:0;border-radius:999px;font-size:1rem;line-height:1;color:#cbd5e1;background:transparent;cursor:pointer}.route-pending[data-v-fc5d1073]{position:fixed;top:0;left:0;right:0;z-index:10000;display:flex;flex-direction:column;pointer-events:none}.route-pending-bar[data-v-fc5d1073]{height:3px;background:linear-gradient(90deg,transparent,var(--serve, #22c55e),transparent);animation:route-pending-slide-fc5d1073 1.1s ease-in-out infinite}.route-pending-label[data-v-fc5d1073]{align-self:center;margin-top:.35rem;padding:.25rem .65rem;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text);background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--surface-border);box-shadow:var(--shadow)}@keyframes route-pending-slide-fc5d1073{0%{transform:translate(-60%)}to{transform:translate(60%)}}.route-pending-enter-active[data-v-fc5d1073],.route-pending-leave-active[data-v-fc5d1073]{transition:opacity .15s ease}.route-pending-enter-from[data-v-fc5d1073],.route-pending-leave-to[data-v-fc5d1073]{opacity:0}.staging-banner[data-v-c48093e7]{position:sticky;top:0;z-index:9999;padding:.35rem .75rem;text-align:center;font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#422006;background:#fde68a;border-bottom:1px solid #f59e0b}.powered-by-wrap[data-v-3985f53f]{display:flex;flex-direction:column;align-items:center;gap:.2rem}.powered-by[data-v-3985f53f]{margin:0}.app-build-line[data-v-3985f53f]{margin:0;font-size:.62rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--text-muted);opacity:.85;text-align:center;word-break:break-word;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.2rem .35rem}.app-build-update-indicator[data-v-3985f53f]{display:inline-flex;align-items:center;gap:.3rem;color:#a5b4fc}.app-build-update-dot[data-v-3985f53f]{width:.35rem;height:.35rem;border-radius:999px;background:currentColor;animation:app-build-update-pulse-3985f53f 1s ease-in-out infinite}@keyframes app-build-update-pulse-3985f53f{0%,to{opacity:.35}50%{opacity:1}}.landing-content.landing-content--wide[data-v-26aa4a6f]{width:min(100%,52rem)}.resume-row[data-v-26aa4a6f]{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0 0 1.5rem}.resume-chip[data-v-26aa4a6f]{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .9rem;border-radius:999px;border:1px solid rgba(34,197,94,.4);background:#22c55e1a;color:var(--serve);font-weight:700;font-size:.88rem;text-decoration:none;transition:background .15s ease,border-color .15s ease}.resume-chip[data-v-26aa4a6f]:hover{background:#22c55e2e;border-color:#22c55eb3}.resume-chip--host[data-v-26aa4a6f]{border-color:var(--surface-border);background:var(--fill-subtle);color:var(--text)}.resume-chip--court[data-v-26aa4a6f]{border-color:#6366f173;background:#6366f11a;color:#a5b4fc}.resume-chip--court[data-v-26aa4a6f]:hover{background:#6366f12e;border-color:#6366f1b3}.resume-chip--open-play[data-v-26aa4a6f]{border-color:#f59e0b73;background:#f59e0b1a;color:#fcd34d}.resume-chip--open-play[data-v-26aa4a6f]:hover{background:#f59e0b2e;border-color:#f59e0bb3}.resume-dot[data-v-26aa4a6f]{width:.5rem;height:.5rem;border-radius:999px;background:#22c55e}.resume-dot--court[data-v-26aa4a6f]{background:#818cf8}.resume-dot--open-play[data-v-26aa4a6f]{background:#f59e0b}.mode-grid[data-v-26aa4a6f]{display:grid;grid-template-columns:1fr;gap:.85rem;text-align:left}.mode-card[data-v-26aa4a6f]{display:flex;flex-direction:column;gap:.35rem;padding:1.15rem 1.2rem;border-radius:var(--radius);border:1px solid var(--surface-border);background:var(--surface);color:var(--text);text-decoration:none;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.mode-card[data-v-26aa4a6f]:hover{transform:translateY(-2px);border-color:#22c55e80;box-shadow:0 12px 30px #0000001f}.mode-card--scoring[data-v-26aa4a6f]{border-color:#22c55e73;background:linear-gradient(160deg,rgba(34,197,94,.1),var(--surface) 60%)}.mode-card--open-play[data-v-26aa4a6f]{border-color:#38bdf859;background:linear-gradient(160deg,rgba(56,189,248,.08),var(--surface) 60%)}.mode-card--tournament[data-v-26aa4a6f]{border-color:#a855f759;background:linear-gradient(160deg,rgba(168,85,247,.08),var(--surface) 60%)}.mode-icon[data-v-26aa4a6f]{display:inline-grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:999px;background:var(--fill-subtle);color:var(--serve);margin-bottom:.15rem}.mode-icon svg[data-v-26aa4a6f]{width:1.35rem;height:1.35rem}.mode-card--open-play .mode-icon[data-v-26aa4a6f]{color:#0284c7;background:#38bdf824}.mode-card--tournament .mode-icon[data-v-26aa4a6f]{color:#7c3aed;background:#a855f724}.mode-title[data-v-26aa4a6f]{font-size:1.12rem;font-weight:800;letter-spacing:-.01em}.mode-desc[data-v-26aa4a6f]{font-size:.86rem;line-height:1.45;color:var(--text-muted)}.mode-meta[data-v-26aa4a6f]{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.mode-cta[data-v-26aa4a6f]{margin-top:.25rem;font-size:.9rem;font-weight:800;color:var(--serve)}.mode-card--open-play .mode-cta[data-v-26aa4a6f]{color:#0284c7}.mode-card--tournament .mode-cta[data-v-26aa4a6f]{color:#7c3aed}@media(min-width:720px){.mode-grid[data-v-26aa4a6f]{grid-template-columns:repeat(3,1fr)}}:root,[data-theme=dark]{color-scheme:dark;--safe-top: env(safe-area-inset-top);--bg: #070b14;--bg-accent: #0f172a;--surface: rgba(18, 24, 38, .92);--surface-border: rgba(255, 255, 255, .08);--text: #f8fafc;--text-muted: #94a3b8;--fill-subtle: rgba(255, 255, 255, .04);--fill-muted: rgba(255, 255, 255, .08);--ghost-fill: rgba(255, 255, 255, .05);--input-bg: rgba(255, 255, 255, .04);--modal-backdrop: rgba(2, 6, 14, .85);--app-title-tld: #cbd5e1;--score-stripe: rgba(255, 255, 255, .32);--landing-bg: radial-gradient(circle at 20% 10%, rgba(239, 68, 68, .12), transparent 40%), radial-gradient(circle at 80% 20%, rgba(59, 130, 246, .14), transparent 42%), linear-gradient(180deg, #0a1020 0%, var(--bg) 100%);--play-shell-overlay: rgba(15, 23, 42, .65);--play-shell-grid: rgba(255, 255, 255, .015);--play-footer-fade: rgba(7, 11, 20, .92);--secondary-btn-bg: rgba(59, 130, 246, .18);--secondary-btn-border: rgba(59, 130, 246, .45);--secondary-btn-text: #bfdbfe;--danger: #ef4444;--danger-deep: #b91c1c;--danger-btn-bg: rgba(239, 68, 68, .2);--danger-btn-border: rgba(239, 68, 68, .5);--danger-btn-text: #fecaca;--team-a: #ef4444;--team-a-deep: #991b1b;--team-b: #3b82f6;--team-b-deep: #1d4ed8;--status-playing: #22c55e;--status-playing-next: #818cf8;--status-in-queue: #64748b;--status-in-rotation: #0284c7;--status-resting: #d97706;--status-left: #64748b;--status-switch-sides: #f87171;--court-surface-highlight: radial-gradient( ellipse 95% 55% at 50% -8%, rgba(255, 255, 255, .18), transparent 58% );--court-surface-lines: repeating-linear-gradient( 0deg, transparent 0, transparent 24px, rgba(255, 255, 255, .07) 24px, rgba(255, 255, 255, .07) 25px );--court-surface-weave: repeating-linear-gradient( 135deg, rgba(255, 255, 255, .045) 0, rgba(255, 255, 255, .045) 1px, transparent 1px, transparent 5px );--court-surface-noise: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.42'/%3E%3C/svg%3E");--court-surface-vignette: radial-gradient( ellipse 120% 90% at 50% 108%, rgba(0, 0, 0, .22), transparent 52% );--court-a-fill: linear-gradient(160deg, var(--team-a) 0%, var(--team-a-deep) 100%);--court-b-fill: linear-gradient(160deg, var(--team-b) 0%, var(--team-b-deep) 100%);--serve: #84cc16;--accent: #22c55e;--radius: 18px;--radius-sm: 12px;--shadow: 0 24px 48px rgba(0, 0, 0, .35);--app-bar-height: 3.25rem;--app-bar-px: 1rem;--app-bar-py: .65rem;--app-bar-gap: .75rem;--native-chrome-inset-end: 0px;--host-content-inset-end: env(safe-area-inset-right, 0px);--host-content-inset-start: env(safe-area-inset-left, 0px)}html.is-native{--native-chrome-inset-end: 0px;--host-content-inset-end: env(safe-area-inset-right, 0px);--host-content-inset-start: env(safe-area-inset-left, 0px)}html{font-size:calc(100% * var(--text-scale, 1))}html,html[data-text-scale=standard],html:not([data-text-scale]){--text-scale: 1;--court-scale: 1}html[data-text-scale=large]{--text-scale: 1.12;--court-scale: 1.15}html[data-text-scale=xlarge]{--text-scale: 1.25;--court-scale: 1.3}[data-theme=light]{color-scheme:light;--safe-top: env(safe-area-inset-top);--bg: #f1f5f9;--bg-accent: #e2e8f0;--surface: #ffffff;--surface-border: rgba(15, 23, 42, .12);--text: #0f172a;--text-muted: #64748b;--fill-subtle: rgba(15, 23, 42, .04);--fill-muted: rgba(15, 23, 42, .07);--ghost-fill: rgba(15, 23, 42, .05);--input-bg: #ffffff;--modal-backdrop: rgba(15, 23, 42, .45);--app-title-tld: #64748b;--score-stripe: rgba(255, 255, 255, .35);--landing-bg: radial-gradient(circle at 20% 10%, rgba(239, 68, 68, .08), transparent 40%), radial-gradient(circle at 80% 20%, rgba(59, 130, 246, .1), transparent 42%), linear-gradient(180deg, #e2e8f0 0%, var(--bg) 100%);--play-shell-overlay: rgba(241, 245, 249, .85);--play-shell-grid: rgba(15, 23, 42, .04);--play-footer-fade: rgba(241, 245, 249, .96);--secondary-btn-bg: rgba(59, 130, 246, .12);--secondary-btn-border: rgba(59, 130, 246, .35);--secondary-btn-text: #1d4ed8;--danger: #dc2626;--danger-deep: #991b1b;--danger-btn-bg: rgba(239, 68, 68, .14);--danger-btn-border: rgba(220, 38, 38, .4);--danger-btn-text: #991b1b;--shadow: 0 16px 40px rgba(15, 23, 42, .1)}*{box-sizing:border-box;touch-action:manipulation;-webkit-tap-highlight-color:transparent}html,body{margin:0;width:100%;max-width:100%;height:100%;overflow:hidden;font-family:SF Pro Text,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);overscroll-behavior:none;user-select:none;-webkit-user-select:none}#app{width:100%;max-width:100%;height:100%;min-height:100svh;min-height:100dvh;display:flex;flex-direction:column;overflow:hidden}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.landing{position:relative;flex:1 1 auto;min-height:0;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:calc(4.5rem + var(--safe-top)) 1.5rem calc(2rem + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;scroll-padding-top:calc(4.5rem + var(--safe-top));background:var(--landing-bg)}.landing-glow{position:absolute;inset:auto 0 20% 0;height:40%;background:radial-gradient(circle,rgba(34,197,94,.08),transparent 70%);pointer-events:none}.landing-content{position:relative;width:min(100%,22rem);text-align:center}.landing-category{margin:.65rem 0 0;font-size:.78rem;font-weight:700;letter-spacing:.12em;line-height:1.55;text-transform:uppercase;color:var(--serve)}.landing h1{margin:0;font-weight:inherit;letter-spacing:inherit;line-height:inherit}.app-brand{display:inline-flex;align-items:center;gap:.5em;font-weight:800;letter-spacing:-.03em;line-height:1}.app-brand--stack{flex-direction:column;gap:.35rem}.app-brand--lg.app-brand--stack{gap:.4rem}.app-brand--stack .app-brand-mark{width:1.55em;height:1.55em}.app-brand-mark{display:block;flex-shrink:0}.app-brand--sm{font-size:1.65rem}.app-brand--sm .app-brand-mark{width:1.85em;height:1.85em}.app-brand--md{font-size:2.5rem}.app-brand--md .app-brand-mark{width:1.85em;height:1.85em}.app-brand--lg{font-size:clamp(2.75rem,12vw,4rem)}.app-brand--lg .app-brand-mark{width:1.85em;height:1.85em}.app-brand--lg.app-brand--stack .app-brand-mark{width:1.55em;height:1.55em}.app-brand--subtitled{align-items:center}.app-brand-text{display:flex;flex-direction:column;align-items:flex-start;gap:.12rem;min-width:0}.app-brand-subtitle{font-size:.55rem;font-weight:700;letter-spacing:.12em;line-height:1.2;text-transform:uppercase;color:var(--serve);white-space:nowrap}.app-brand--sm .app-brand-subtitle{font-size:.5rem}.app-title{font-weight:inherit;letter-spacing:inherit;line-height:inherit}.app-title-go{color:var(--serve)}.app-title-score{background:repeating-linear-gradient(102deg,transparent 0,transparent 7px,var(--score-stripe) 7px,var(--score-stripe) 7.5px),linear-gradient(180deg,#5b9cf8,#3b82f6 45%,#2563eb);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.app-title-tld{color:var(--app-title-tld);font-weight:inherit}.tagline{margin:.85rem 0 2rem;color:var(--text-muted);line-height:1.55;font-size:1rem}.cta{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;width:100%;max-width:18rem;padding:1rem 1.25rem;border-radius:999px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#052e16;font-weight:800;font-size:1.05rem;box-shadow:0 12px 32px #22c55e47;transition:transform .15s ease}.cta:active{transform:scale(.98)}.cta-arrow{font-size:1.2rem}.cta-secondary{display:inline-block;margin-top:.85rem;padding:.6rem 1.1rem;border-radius:999px;border:1px solid var(--surface-border);color:var(--text-muted);font-weight:700;font-size:.9rem}.feature-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1rem;margin:2rem 0 0;padding:0;list-style:none;color:var(--text-muted);font-size:.82rem}.feature-list li:before{content:"•";margin-right:.35rem;color:var(--serve)}.play-shell{width:100%;max-width:100%;min-width:0;height:100svh;max-height:100svh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;overflow-x:clip;background:linear-gradient(180deg,var(--play-shell-overlay) 0%,transparent 28%),repeating-linear-gradient(90deg,var(--play-shell-grid) 0,var(--play-shell-grid) 1px,transparent 1px,transparent 48px),var(--bg)}.play-shell--embedded{height:100%;max-height:none;min-height:0;grid-template-rows:auto minmax(0,1fr);background:var(--bg)}.play-shell--embedded>.play-stack{height:100%;min-height:0}.play-shell--embedded .play-stack-main,.play-shell--embedded .court{flex:1;min-height:0}.play-shell--embedded .court-half{height:100%;min-height:0}.play-stack--embedded{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);grid-template-areas:"main"}.play-body{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;width:100%;overflow:hidden}.play-shell>.play-stack{display:grid;min-height:0;min-width:0;height:100%;overflow:hidden}.play-stack--dock-top{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);grid-template-areas:"queue" "main"}.play-stack--dock-bottom{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "queue"}.play-stack--dock-left{grid-template-rows:minmax(0,1fr);grid-template-columns:var(--play-stack-queue-width, 14rem) minmax(0,1fr);grid-template-areas:"queue main"}.play-stack--dock-right{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) var(--play-stack-queue-width, 14rem);grid-template-areas:"main queue"}.play-stack-queue-wrap{grid-area:queue;position:relative;display:flex;flex-direction:column;min-width:0;min-height:0}.play-stack-queue{grid-area:unset;flex:1;min-height:0;min-width:0}.play-stack--dock-top .play-stack-queue{margin-top:.45rem}.play-stack--dock-bottom .play-stack-queue{margin-bottom:.45rem}.play-stack-queue-resize{position:absolute;top:0;bottom:0;width:12px;margin:0;padding:0;border:0;background:transparent;z-index:6;touch-action:none;cursor:col-resize}.play-stack-queue-resize--left{right:-6px}.play-stack-queue-resize--right{left:-6px}.play-stack-queue-resize:after{content:"";position:absolute;top:12%;bottom:12%;width:3px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 35%,transparent);transition:background .15s ease}.play-stack-queue-resize--left:after{right:4px}.play-stack-queue-resize--right:after{left:4px}.play-stack-queue-resize:hover:after,.play-stack-queue-resize:focus-visible:after,.play-stack--queue-resizing .play-stack-queue-resize:after{background:color-mix(in srgb,#818cf8 75%,transparent)}.play-stack--queue-resizing{-webkit-user-select:none;user-select:none;cursor:col-resize}.play-stack--queue-resizing *{cursor:col-resize!important}.play-stack-main{grid-area:main;display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}.play-header{position:sticky;top:0;z-index:40;flex-shrink:0;display:flex;align-items:center;gap:var(--app-bar-gap);min-width:0;min-height:var(--app-bar-height);padding:calc(var(--app-bar-py) + var(--safe-top)) calc(var(--app-bar-px) + var(--native-chrome-inset-end)) var(--app-bar-py) calc(var(--app-bar-px) + env(safe-area-inset-left,0px));background:var(--surface);border-bottom:1px solid var(--surface-border);overflow-x:clip}.play-header-start{display:flex;flex-direction:column;gap:.2rem;flex:1;min-width:0}.play-header-start--exit{cursor:pointer;border:0;background:transparent;text-align:left;padding:0;font:inherit;color:inherit}.play-header-meta{margin:0;font-size:.72rem;font-weight:600;color:var(--text-muted);letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(16rem,52vw)}.brand{font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-decoration:none;color:inherit}.header-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0;margin-left:auto}.header-actions>.icon-btn:last-child{flex-shrink:0}.header-toolbar{display:flex;align-items:stretch;border:1px solid var(--surface-border);border-radius:999px;background:var(--surface);overflow:hidden}.header-toolbar .theme-toggle,.header-toolbar .icon-btn{width:2.125rem;height:2.125rem;border:0;border-radius:0;background:transparent;font-size:1rem}.header-toolbar .theme-toggle+.icon-btn,.header-toolbar .icon-btn+.icon-btn{border-left:1px solid var(--surface-border)}.header-toolbar .icon-btn svg{width:1.05rem;height:1.05rem}.play-header--compact{padding:calc(.35rem + var(--safe-top)) calc(var(--app-bar-px) + var(--native-chrome-inset-end)) .35rem calc(var(--app-bar-px) + env(safe-area-inset-left,0px));min-height:2.75rem}.play-header .app-brand{gap:.28em}.play-header--compact .play-header-meta{display:none}.header-tools-enter-active,.header-tools-leave-active{transition:opacity .16s ease,transform .16s ease}.header-tools-enter-from,.header-tools-leave-to{opacity:0;transform:translate(.35rem)}.header-actions>.icon-btn{width:2.125rem;height:2.125rem}.icon-btn{width:2.5rem;height:2.5rem;border:1px solid var(--surface-border);border-radius:999px;background:var(--surface);color:var(--text);font-size:1.1rem;display:grid;place-items:center;transition:border-color .15s ease,box-shadow .15s ease}.icon-btn svg{width:1.15rem;height:1.15rem}.icon-btn.is-on{border-color:#84cc168c;box-shadow:0 0 0 1px #84cc1640}@keyframes live-dot-pulse{0%,to{transform:scale(1);opacity:1;box-shadow:0 0 #22c55ea6}50%{transform:scale(1.25);opacity:.9;box-shadow:0 0 0 6px #22c55e00}}.live-dot-pulse{animation:live-dot-pulse 1.5s ease-in-out infinite}.statusbar{margin:.4rem calc(1rem + var(--native-chrome-inset-end)) 0 calc(1rem + env(safe-area-inset-left,0px));padding:.55rem 1rem;border:1px solid var(--surface-border);border-radius:999px;background:var(--surface);box-shadow:var(--shadow);text-align:center;flex-shrink:0}.statusbar.is-over{border-color:#22c55e73;box-shadow:0 0 0 1px #22c55e2e,var(--shadow)}.status-text{margin:0;font-size:calc(.95rem * var(--court-scale));font-weight:700;letter-spacing:-.01em}.status-meta{margin:.15rem 0 0;font-size:calc(.72rem * var(--court-scale));color:var(--text-muted)}.court{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);align-items:stretch;flex:1;min-height:0;min-width:0;width:100%;margin:0;border-radius:0;overflow:hidden;box-shadow:none}.court-half{position:relative;border:0;width:100%;min-width:0;min-height:0;height:auto;align-self:stretch;container-type:inline-size;--court-unit: clamp(.85rem, 18cqw, 3.25rem);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(.25rem,1.5vh,.65rem);padding:clamp(.65rem,2vh,1rem) .75rem;color:#fff;overflow:hidden;transition:filter .18s ease,opacity .18s ease,transform .08s ease}.court-half>*{position:relative;z-index:2}.court-half:disabled{cursor:not-allowed}.court-half:active:not(:disabled){transform:scale(.99)}.court-a{background-color:var(--team-a-deep);background-image:var(--court-surface-highlight),var(--court-surface-vignette),var(--court-surface-lines),var(--court-surface-weave),var(--court-surface-noise),var(--court-a-fill);background-size:auto,auto,auto,auto,140px 140px,auto;box-shadow:inset -3px 0 16px #0000002e}.court-b{background-color:var(--team-b-deep);background-image:var(--court-surface-highlight),var(--court-surface-vignette),var(--court-surface-lines),var(--court-surface-weave),var(--court-surface-noise),var(--court-b-fill);background-size:auto,auto,auto,auto,140px 140px,auto;box-shadow:inset 3px 0 16px #0000002e}.court-half.dim:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000038;pointer-events:none;z-index:1;transition:background .18s ease}.court-half.dim{opacity:1;filter:none}.court-half.serving:after{content:"";position:absolute;top:.55rem;right:.55rem;bottom:.55rem;left:.55rem;border:2px solid rgba(255,255,255,.5);border-radius:14px;pointer-events:none}.court-half.winner{opacity:1;filter:none;animation:winnerPulse 1.4s ease-in-out infinite}.court-half.winner:after{content:"";position:absolute;top:.55rem;right:.55rem;bottom:.55rem;left:.55rem;border:3px solid var(--accent);border-radius:14px;box-shadow:0 0 24px #22c55e80;pointer-events:none;animation:winnerRing 1.4s ease-in-out infinite}.court-half.winner .ch-score{animation:winnerPop .6s cubic-bezier(.2,.8,.2,1.5)}@keyframes winnerPulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.16)}}@keyframes winnerRing{0%,to{box-shadow:0 0 18px #22c55e66}50%{box-shadow:0 0 36px #22c55ebf}}@keyframes winnerPop{0%{transform:scale(.7)}60%{transform:scale(1.14)}to{transform:scale(1)}}.ch-name{font-size:calc(clamp(.62rem,calc(var(--court-unit) * .44),1.55rem) * var(--court-scale));font-weight:800;letter-spacing:-.01em;opacity:.92;text-shadow:0 2px 12px rgba(0,0,0,.3);max-width:92%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-score{flex:1 1 auto;display:flex;align-items:center;justify-content:center;font-size:calc(clamp(2.25rem,42cqw,8rem) * var(--court-scale));font-weight:900;line-height:.9;letter-spacing:-.05em;font-variant-numeric:tabular-nums;text-shadow:0 6px 28px rgba(0,0,0,.35);max-width:100%;overflow:hidden}.ch-serve{display:inline-flex;align-items:center;padding:.35rem .75rem;border-radius:999px;background:#00000047;font-size:calc(.72rem * var(--court-scale));font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:center;max-width:calc(100% - 1.5rem)}.court-serve-rail{position:absolute;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:calc(var(--court-unit) * .55);z-index:3}.court-screen-left .court-serve-rail{left:clamp(.75rem,7cqw,1.85rem)}.court-screen-right .court-serve-rail{right:clamp(.75rem,7cqw,1.85rem)}.court-players{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2;--court-player-inset: clamp(.55rem, 5cqw, 1rem);--court-player-side: clamp(.55rem, 5cqw, 1.25rem);--court-player-pad-x: clamp(.35rem, 2.5cqw, .85rem);--court-player-top: var(--court-player-inset);--court-player-bottom-top: calc( 100% - var(--court-player-inset) - 1.25em - .5rem - clamp(.35rem, 4cqw, .65rem) );--court-player-travel: calc(var(--court-player-bottom-top) - var(--court-player-top))}.court-player{position:absolute;max-width:min(52cqw,92%);padding:.25rem var(--court-player-pad-x);font-size:calc(clamp(.62rem,calc(var(--court-unit) * .44),1.65rem) * var(--court-scale));font-weight:800;letter-spacing:-.01em;line-height:1.15;text-shadow:0 2px 10px rgba(0,0,0,.35);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;bottom:auto}.court-screen-left .court-player{left:var(--court-player-side)}.court-screen-right .court-player{right:var(--court-player-side);text-align:right}.court-player--pos-0{top:var(--court-player-top)}.court-player--pos-1{top:var(--court-player-bottom-top)}.court-half.players-swapping .court-player{transition:none}.court-half.players-swapping .court-player.is-swap-descending{animation:courtSwapDown 1.1s cubic-bezier(.33,1,.68,1) forwards}.court-half.players-swapping .court-player.is-swap-ascending{animation:courtSwapUp 1.1s cubic-bezier(.33,1,.68,1) forwards}@keyframes courtSwapDown{0%{top:var(--court-player-top);transform:scale(1)}72%{top:calc(var(--court-player-bottom-top) + .16rem);transform:scale(1.06)}to{top:var(--court-player-bottom-top);transform:scale(1)}}@keyframes courtSwapUp{0%{top:var(--court-player-bottom-top);transform:scale(1)}72%{top:calc(var(--court-player-top) - .16rem);transform:scale(1.06)}to{top:var(--court-player-top);transform:scale(1)}}.court-player.is-serving{padding:.28rem calc(var(--court-player-pad-x) + .1rem);border-radius:999px;background:#00000052;box-shadow:0 0 0 1px #ffffff38}.court-player.is-serve-pop{animation:serverPop .48s cubic-bezier(.34,1.35,.64,1)}@keyframes serverPop{0%{transform:scale(.9);box-shadow:0 0 #bef26400}45%{transform:scale(1.1);box-shadow:0 0 0 2px #bef2648c,0 0 14px #84cc1673}to{transform:scale(1);box-shadow:0 0 0 1px #ffffff38}}.court-ball{width:var(--court-unit);height:var(--court-unit);border-radius:999px;border:max(2px,.14em) solid rgba(255,255,255,.28);background:#00000038;box-shadow:inset 0 -3px 8px #0000004d;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.court-ball.reserve,.court-ball.active{background:radial-gradient(circle at 32% 28%,#fef9c3 0%,var(--serve) 42%,#4d7c0f 100%);border-color:#ffffffeb;box-shadow:0 0 16px #bef264a6,0 0 28px #84cc1659,inset 0 -2px 6px #00000026;transform:scale(1.06)}.court-ball.active{animation:serveBallPulse 1.35s ease-in-out infinite}@keyframes serveBallPulse{0%,to{transform:scale(1.1);box-shadow:0 0 0 2px #fffffff2,0 0 0 4px #bef26466,0 0 20px #bef264bf,0 0 36px #84cc1673,inset 0 -2px 6px #00000026}50%{transform:scale(1.17);box-shadow:0 0 0 2px #fff,0 0 0 8px #bef2648c,0 0 28px #bef264f2,0 0 52px #84cc16a6,inset 0 -2px 6px #00000026}}.ch-hint{min-height:1.1rem;font-size:calc(.72rem * var(--court-scale));font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.7;text-align:center}.ch-pick{opacity:.95;color:#fff}.serve-setup{margin:.4rem .75rem 0;padding:.8rem .9rem;border:1px solid var(--surface-border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow);flex-shrink:0}.serve-setup-lead{margin:0 0 .55rem;font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted);text-align:center}.serve-setup-row{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.serve-setup-field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.serve-setup-label{font-size:.72rem;font-weight:700;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.serve-setup-select{width:100%;border:1px solid var(--surface-border);border-radius:.45rem;background:var(--surface);color:var(--text);font-size:.95rem;font-weight:600;padding:.5rem .55rem}.serve-setup-hint{margin:.55rem 0 0;font-size:.78rem;font-weight:600;color:var(--text-muted);text-align:center}.ch-win{opacity:1;font-size:.9rem}.court.picking .court-half{animation:pickPulse 1.8s ease-in-out infinite}@keyframes pickPulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.12)}}.net{position:absolute;top:.4rem;bottom:.4rem;left:50%;width:3px;transform:translate(-50%);background:#ffffffd9;box-shadow:0 0 12px #ffffff59;z-index:2;pointer-events:none}.call-chip{position:absolute;top:.9rem;left:50%;transform:translate(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.4rem .7rem;border-radius:var(--radius-sm);background:#070b14eb;border:1px solid rgba(255,255,255,.14);box-shadow:var(--shadow);font:inherit;color:#f8fafc;cursor:pointer;transition:transform .08s ease,border-color .15s ease}.call-chip:active:not(:disabled){transform:translate(-50%) scale(.97)}.call-chip.is-repeating{animation:callChipRepeat .7s ease-out}@keyframes callChipRepeat{0%{transform:translate(-50%) scale(1);box-shadow:var(--shadow);border-color:#ffffff24}30%{transform:translate(-50%) scale(1.1);box-shadow:0 0 0 3px #bef26473,0 0 24px #84cc1659,var(--shadow);border-color:#bef264a6}to{transform:translate(-50%) scale(1);box-shadow:var(--shadow);border-color:#ffffff24}}@media(prefers-reduced-motion:reduce){.call-chip.is-repeating{animation:none;border-color:#bef2648c}}.call-chip:disabled{cursor:default;opacity:.55}.call-nums{font-size:calc(1.15rem * var(--court-scale));font-weight:900;letter-spacing:.02em;font-variant-numeric:tabular-nums}.call-nums i{color:var(--serve);font-style:normal;padding:0 .15rem}.call-cap{font-size:calc(.55rem * var(--court-scale));font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#94a3b8f2}.powered-by{margin:0;padding:.4rem 1rem;font-size:.68rem;font-weight:500;letter-spacing:.02em;color:#94a3b8cc;text-align:center}.powered-by a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(148,163,184,.3)}.powered-by a:hover,.powered-by a:focus-visible{color:var(--text);border-bottom-color:currentColor}.landing-powered{margin-top:auto;width:100%;padding-bottom:calc(.75rem + env(safe-area-inset-bottom))}.play-shell-footer{background:linear-gradient(180deg,transparent,var(--play-footer-fade))}.play-shell-footer .play-footer{background:none;padding-bottom:.35rem}.play-shell-footer .powered-by{padding-top:0;padding-bottom:calc(.35rem + env(safe-area-inset-bottom))}.host-powered{margin-top:auto;padding-bottom:calc(.75rem + env(safe-area-inset-bottom))}.play-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.65rem;padding:.75rem calc(1rem + var(--native-chrome-inset-end)) calc(.85rem + env(safe-area-inset-bottom)) calc(1rem + env(safe-area-inset-left,0px));background:linear-gradient(180deg,transparent,var(--play-footer-fade))}.play-footer:has(.footer-btn-queue){grid-template-columns:repeat(3,minmax(0,1fr))}.footer-btn{border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.95rem 1rem;background:var(--surface);color:var(--text);font-size:.95rem;font-weight:700}.footer-btn-accent{background:var(--fill-muted)}.play-footer:has(.footer-btn--solo){grid-template-columns:1fr}.footer-btn--solo{grid-column:1 / -1}.footer-btn-queue{border-color:color-mix(in srgb,#6366f1 45%,var(--surface-border));background:color-mix(in srgb,#6366f1 12%,var(--surface));color:#a5b4fc}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:var(--modal-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center}.drawer{width:min(100%,28rem);max-height:min(85vh,calc(100vh - env(safe-area-inset-top) - .75rem));max-height:min(85dvh,calc(100dvh - env(safe-area-inset-top) - .75rem));display:flex;flex-direction:column;min-height:0;overflow:hidden;border-radius:var(--radius) var(--radius) 0 0;background:var(--surface);border:1px solid var(--surface-border);border-bottom:0;box-shadow:var(--shadow)}.drawer-head{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding:1rem 1rem .5rem}.drawer-head h2{margin:0;font-size:1.05rem}.drawer-tabs{display:flex;flex-shrink:0;gap:.35rem;margin:0 1rem .35rem;padding:.2rem;border-radius:var(--radius-sm);background:var(--fill-subtle);border:1px solid var(--surface-border)}.drawer-tab{flex:1;border:0;border-radius:calc(var(--radius-sm) - 2px);padding:.45rem .35rem;background:transparent;color:var(--text-muted);font-size:.78rem;font-weight:800;letter-spacing:.03em;min-width:0}.drawer-tab.active{background:var(--surface);color:var(--text);box-shadow:0 1px 4px #00000014}.drawer-panel{display:flex;flex-direction:column;gap:1rem}.drawer-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:.5rem 1rem calc(1.25rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:1rem}.field-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem;font-size:.9rem;color:var(--text-muted)}.field-top strong{color:var(--text);font-size:1rem}.field input[type=range]{width:100%;accent-color:var(--serve)}.team-roster-row{display:grid;grid-template-columns:1fr auto 1fr;gap:.6rem;align-items:center}.team-roster-row:not(:has(.team-swap-btn)){grid-template-columns:1fr 1fr}.team-swap-btn{width:2.5rem;height:2.5rem;border:1px solid var(--surface-border);border-radius:999px;background:var(--surface);color:var(--text);font-size:1.1rem;font-weight:700;line-height:1;flex-shrink:0}.roster-board{display:grid;grid-template-columns:1fr auto 1fr;gap:.6rem;align-items:start}.roster-board:not(.roster-board--swap){grid-template-columns:1fr 1fr}.roster-col{display:flex;flex-direction:column;gap:.6rem;min-width:0}.roster-players{display:flex;flex-direction:column;gap:.25rem}.roster-board--swap.roster-board--row-swap{grid-template-columns:1fr auto 1fr}.roster-mid-col{display:flex;flex-direction:column;gap:.6rem;min-width:0}.roster-mid-stack{display:flex;flex-direction:column;gap:.25rem}.roster-mid-between{display:grid;place-items:center;min-height:2rem;padding:.1rem 0}.roster-team-spacer{min-height:2.75rem}.roster-row-swap-wrap{display:flex;align-items:center;justify-content:center;min-height:2.75rem}.roster-player-caption--ghost{visibility:hidden}.roster-row-swap{width:2rem;height:2rem;border:1px solid var(--surface-border);border-radius:999px;background:var(--surface);color:var(--text-muted);font-size:.95rem;font-weight:700;line-height:1;cursor:pointer}.roster-row-swap--ghost{display:inline-block;border-color:transparent;background:transparent;cursor:default;pointer-events:none}.roster-team-swap--center{width:3.35rem;height:3.35rem;font-size:1.55rem;color:var(--text);border-width:2px;box-shadow:0 2px 10px #00000014}.roster-sides-swap{align-self:start;margin-top:.15rem}.roster-player-swap{align-self:center;width:2rem;height:2rem;border:1px solid var(--surface-border);border-radius:999px;background:var(--surface);color:var(--text-muted);font-size:.95rem;font-weight:700;line-height:1}.roster-team--readout,.roster-player--readout{display:flex;align-items:center;min-height:2.75rem}.roster-player--tap{cursor:pointer}.roster-player--tap:focus-visible{outline:2px solid var(--focus, #3b82f6);outline-offset:2px}.roster-player-wrap{display:flex;flex-direction:column;gap:.2rem}.roster-player-line{display:flex;align-items:center;gap:.45rem;min-width:0}.roster-player-line .roster-player{flex:1;min-width:0}.roster-serve-ball.court-ball{--court-unit: .9rem;width:var(--court-unit);height:var(--court-unit);flex-shrink:0}.roster-serve-ball.court-ball.active{animation:none;transform:none}.roster-serve-ball--ghost{visibility:hidden}button.roster-serve-ball--tap{border:none;padding:0;background:transparent;cursor:pointer}button.roster-serve-ball--tap.roster-serve-ball--ghost{visibility:visible;opacity:.35}button.roster-serve-ball--tap.roster-serve-ball--ghost:active,button.roster-serve-ball--tap.court-ball.active:active{opacity:.85}.roster-player-caption{font-size:.72rem;font-weight:700;letter-spacing:.02em;color:var(--text-muted)}.field-hint{font-size:.8rem;color:var(--text-muted)}.player-picker-groups{display:flex;flex-direction:column;gap:.55rem}.player-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(7.25rem,1fr));gap:.35rem}.player-picker-avatar{display:inline-grid;place-items:center;width:1.85rem;height:1.85rem;border-radius:999px;border:2px solid var(--surface-border);background:color-mix(in srgb,var(--fill-subtle) 70%,var(--surface));color:var(--text-muted);font-size:.62rem;font-weight:800;letter-spacing:.02em;line-height:1;flex-shrink:0}.player-picker-avatar--playing{border-color:var(--status-playing);background:color-mix(in srgb,var(--status-playing) 20%,var(--surface));color:#15803d}.player-picker-avatar--playing-next{border-color:#6366f1;background:color-mix(in srgb,#6366f1 18%,var(--surface));color:#4338ca}.player-picker-avatar--in-queue{border-color:#94a3b8;background:color-mix(in srgb,#94a3b8 16%,var(--surface));color:#475569}.player-picker-avatar--in-rotation{border-color:#0ea5e9;background:color-mix(in srgb,#0ea5e9 16%,var(--surface));color:#0369a1}.player-picker-avatar--resting{border-color:#f59e0b;background:color-mix(in srgb,#f59e0b 18%,var(--surface));color:#b45309}.player-picker-avatar--left{border-color:color-mix(in srgb,var(--text-muted) 55%,var(--surface-border));background:color-mix(in srgb,var(--text-muted) 10%,var(--surface));color:var(--text-muted)}.player-picker-tile{position:relative;display:flex;align-items:center;justify-content:center;min-height:3.35rem;padding:.42rem .45rem .38rem;border:1px solid var(--surface-border);border-left-width:3px;border-left-color:var(--surface-border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--fill-subtle) 55%,var(--surface));color:var(--text);font:inherit;font-size:.82rem;font-weight:700;line-height:1.15;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.player-picker-tile--playing{border-color:color-mix(in srgb,var(--status-playing) 32%,var(--surface-border));border-left-color:var(--status-playing);background:color-mix(in srgb,var(--status-playing) 7%,var(--surface))}.player-picker-tile--playing-next{border-color:color-mix(in srgb,#6366f1 32%,var(--surface-border));border-left-color:#6366f1;background:color-mix(in srgb,#6366f1 10%,var(--surface))}.player-picker-tile--in-queue{border-color:color-mix(in srgb,#94a3b8 32%,var(--surface-border));border-left-color:#94a3b8;background:color-mix(in srgb,#94a3b8 6%,var(--surface))}.player-picker-tile--in-rotation{border-color:color-mix(in srgb,#0ea5e9 30%,var(--surface-border));border-left-color:#0ea5e9;background:color-mix(in srgb,#0ea5e9 6%,var(--surface))}.player-picker-tile--resting{border-color:color-mix(in srgb,#f59e0b 32%,var(--surface-border));border-left-color:#f59e0b;background:color-mix(in srgb,#f59e0b 7%,var(--surface))}.player-picker-tile--left{border-color:color-mix(in srgb,var(--text-muted) 35%,var(--surface-border));border-left-color:color-mix(in srgb,var(--text-muted) 70%,var(--surface-border));background:color-mix(in srgb,var(--text-muted) 6%,var(--surface))}.player-picker-tile--switch-sides{border-color:color-mix(in srgb,var(--status-switch-sides) 35%,var(--surface-border));border-left-color:var(--status-switch-sides);background:color-mix(in srgb,var(--status-switch-sides) 8%,var(--surface))}.player-picker-tile:active:not(:disabled){background:color-mix(in srgb,var(--team-a) 14%,var(--surface))}.player-picker-tile.is-selected{border-color:#22c55e73;background:#22c55e1a}.player-picker-tile.is-disabled{opacity:.55;cursor:not-allowed}.player-picker-check{position:absolute;top:.18rem;right:.22rem;width:.85rem;height:.85rem;display:grid;place-items:center;border:1px solid var(--surface-border);border-radius:.2rem;background:var(--input-bg);font-size:.62rem;font-weight:800;color:var(--serve);line-height:1}.player-picker-tile.is-selected .player-picker-check{border-color:#22c55e8c;background:#22c55e29}.player-picker-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.player-picker-tile-body{display:flex;flex-direction:column;align-items:center;gap:.18rem;min-width:0;max-width:100%}.player-picker-tile.is-left{opacity:.72}.player-picker-filters{margin-bottom:.15rem}.player-picker-filters .chip-count{margin-left:.2rem;font-size:.68rem;opacity:.85}.player-picker-empty{margin:0;padding:1rem .35rem;text-align:center;font-size:.88rem;color:var(--text-muted)}.player-status-badge{display:inline-block;font-size:.62rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-status-badge--playing{color:var(--status-playing)}.player-status-badge--playing-next{color:var(--status-playing-next)}.player-status-badge--in-queue{color:var(--status-in-queue)}.player-status-badge--in-rotation{color:var(--status-in-rotation)}.player-status-badge--resting{color:var(--status-resting)}.player-status-badge--left{color:var(--status-left)}.player-status-badge--switch-sides{color:var(--status-switch-sides);text-transform:none;letter-spacing:0;font-size:.65rem;font-weight:700}.player-status-section-label{margin:0 0 .3rem;padding:0 .1rem;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.player-status-section-label--playing{color:var(--status-playing)}.player-status-section-label--playing-next{color:var(--status-playing-next)}.player-status-section-label--in-queue{color:var(--status-in-queue)}.player-status-section-label--in-rotation{color:var(--status-in-rotation)}.player-status-section-label--resting{color:var(--status-resting)}.player-status-section-label--left{color:var(--status-left)}.player-status-section-label--switch-sides{color:var(--status-switch-sides)}.player-picker-section--extra{margin-bottom:.35rem}.team-side-readout{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-input{width:100%;border:1px solid var(--surface-border);border-left-width:3px;border-radius:var(--radius-sm);padding:.7rem .75rem;background:var(--input-bg);color:var(--text);font-size:.95rem;font-weight:700}.team-input:focus{outline:none;background:var(--fill-muted)}.team-input-a{border-left-color:var(--team-a)}.team-input-b{border-left-color:var(--team-b)}.drawer-action{width:100%;border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.85rem;background:var(--input-bg);color:var(--text);font-weight:600}.toggle-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.6rem}.toggle-chip{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.6rem .7rem;background:var(--input-bg);color:var(--text-muted);font-size:.85rem;font-weight:700;text-align:left;transition:border-color .15s ease,color .15s ease,background .15s ease}.toggle-chip small{font-size:.65rem;font-weight:600;letter-spacing:.03em;opacity:.7;text-transform:uppercase}.toggle-chip.is-on{border-color:#84cc168c;background:#84cc161a;color:var(--text)}.scale-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.scale-seg-btn{border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.65rem .35rem;background:var(--input-bg);color:var(--text-muted);font-size:.8rem;font-weight:700;text-align:center;line-height:1.2;transition:border-color .15s ease,color .15s ease,background .15s ease}.scale-seg-btn.is-on{border-color:#84cc168c;background:#84cc161a;color:var(--text)}.voice-select{width:100%;margin-top:.6rem;border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:.7rem .75rem;background:var(--input-bg);color:var(--text);font-size:.9rem;font-weight:600;-webkit-appearance:none;-moz-appearance:none;appearance:none}.voice-select:disabled{opacity:.5}.audio-device-actions{display:flex;gap:.5rem;margin-top:.5rem}.audio-device-actions .drawer-action{flex:1;margin:0}.speaker-field-top{margin-top:.75rem}.speaker-note{margin-top:.5rem}.speaker-note code{font-size:.85em}.speaker-error{color:#f87171}.drawer-note{margin:0;font-size:.78rem;color:var(--text-muted);line-height:1.45}.drawer-enter-active,.drawer-leave-active{transition:opacity .2s ease}.drawer-enter-active .drawer,.drawer-leave-active .drawer{transition:transform .24s ease}.drawer-enter-from,.drawer-leave-to{opacity:0}.drawer-enter-from .drawer,.drawer-leave-to .drawer{transform:translateY(100%)}.scorer-setup-footer .powered-by{padding-top:.35rem;padding-bottom:calc(.35rem + env(safe-area-inset-bottom))}.scorer-setup{min-height:0;overflow:hidden;display:flex;flex-direction:column}.scorer-setup-scroll{flex:1;min-height:0;overflow-y:auto;padding:0 calc(1rem + var(--native-chrome-inset-end)) 1rem calc(1rem + env(safe-area-inset-left,0px))}.scorer-setup-head{display:grid;grid-template-columns:minmax(4.75rem,auto) 1fr minmax(4.75rem,auto);align-items:start;gap:.25rem .5rem;padding:.35rem 0 1rem}.scorer-setup-head-copy{grid-column:2;text-align:center}.scorer-setup-head-side{min-width:4.75rem}.scorer-setup-back{grid-column:1;justify-self:start;margin:0;padding:.15rem .35rem;border:0;background:transparent;color:var(--text-muted);font:inherit;font-size:.82rem;font-weight:700;line-height:1.3;cursor:pointer;-webkit-tap-highlight-color:transparent}.scorer-setup-back:hover:not(:disabled){color:var(--text)}.scorer-setup-back:disabled{opacity:.55;cursor:not-allowed}.scorer-setup-head h1{margin:0 0 .35rem;font-size:1.35rem;letter-spacing:-.02em}.scorer-setup-lead{margin:0;font-size:.9rem;color:var(--text-muted);line-height:1.45}.scorer-setup-fields{display:flex;flex-direction:column;gap:1rem}.setup-field-lead{margin:0 0 .65rem;font-size:.85rem;color:var(--text-muted);line-height:1.4}.scorer-setup-footer{flex-shrink:0;padding:.75rem calc(1rem + var(--native-chrome-inset-end)) 0 calc(1rem + env(safe-area-inset-left,0px));border-top:1px solid var(--surface-border);background:linear-gradient(180deg,transparent,var(--play-footer-fade))}.setup-start-btn{width:100%;border:0;border-radius:var(--radius-sm);padding:.95rem 1rem;background:var(--accent);color:#052e16;font-size:1rem;font-weight:800}.setup-start-btn:disabled{opacity:.45;cursor:not-allowed}.modal-backdrop{position:fixed;top:var(--vv-offset-top, 0px);left:var(--vv-offset-left, 0px);width:var(--vv-width, 100%);height:var(--vv-height, 100dvh);z-index:100;background:var(--modal-backdrop);display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:1rem;padding-top:max(1rem,env(safe-area-inset-top,0px));padding-bottom:max(1rem,env(safe-area-inset-bottom,0px))}.modal-backdrop>:is(.modal,.modal-card,.modal--setup){margin-block:auto;flex-shrink:0}.modal{width:min(100%,22rem);padding:1.35rem;border-radius:var(--radius);background:var(--surface);border:1px solid var(--surface-border);box-shadow:var(--shadow);text-align:center}.modal--setup{width:min(100%,26rem);max-height:min(calc(var(--vv-height, 100dvh) - 2rem),36rem);display:flex;flex-direction:column;text-align:left;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.modal--setup h2{text-align:center}.modal-setup-body{flex:1;min-height:0;overflow-y:auto;margin-bottom:1rem;display:flex;flex-direction:column;gap:1rem}.pre-start-hint{margin:0;font-size:.88rem;color:var(--text-muted);line-height:1.45;text-align:center}.modal--setup .modal-primary{flex-shrink:0;margin-bottom:0}.modal h2{margin:0 0 .5rem;font-size:1.15rem}.icon-x{flex-shrink:0;width:2rem;height:2rem;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--fill-subtle);border:0;color:var(--text-muted);font-size:1.1rem;cursor:pointer}.icon-x:hover{color:var(--text)}.modal p{margin:0 0 1.1rem;color:var(--text-muted);font-size:.92rem;line-height:1.45}.modal-primary,.modal-secondary{width:100%;border:0;border-radius:var(--radius-sm);padding:.95rem;font-weight:700;font-size:.95rem}.modal-primary{margin-bottom:.5rem;background:var(--team-a);color:#fff}.modal-secondary{background:#ffffff14;color:var(--text)}.toast-host{position:fixed;left:50%;top:42%;transform:translate(-50%,-50%);z-index:200;pointer-events:none;width:min(calc(100% - 2rem),20rem)}.toast-host--prominent{z-index:220;width:min(calc(100% - 1.5rem),24rem)}.toast-host--prominent .toast{font-size:clamp(1.15rem,5vw,1.45rem);box-shadow:0 0 0 1px #ffffff14,0 24px 48px #00000073}.scorer-rally-lock{position:fixed;top:0;right:0;bottom:0;left:0;z-index:180;display:grid;place-items:center;background:var(--modal-backdrop);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:all}.scorer-rally-lock-spinner,.scorer-rally-lock .action-spinner{width:2.75rem;height:2.75rem;border-width:3px;color:#f8fafcd1}.scorer-match-advance-busy{position:fixed;top:0;right:0;bottom:0;left:0;z-index:190;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;padding:1.5rem;background:var(--modal-backdrop);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:all;text-align:center}.scorer-match-advance-busy-spinner{width:2.75rem;height:2.75rem;border-width:3px;color:#f8fafcd1}.scorer-match-advance-busy-label{margin:0;font-size:1rem;font-weight:800;color:#f8fafceb}.footer-btn--loading{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;cursor:wait}.footer-btn-spinner{width:1rem;height:1rem;flex-shrink:0}.scorer-lock-enter-active,.scorer-lock-leave-active{transition:opacity .16s ease}.scorer-lock-enter-from,.scorer-lock-leave-to{opacity:0}.toast{padding:1rem 1.15rem;border-radius:var(--radius-sm);background:#070b14f0;border:1px solid rgba(255,255,255,.12);font-size:clamp(1rem,4.5vw,1.25rem);font-weight:900;letter-spacing:.03em;text-transform:uppercase;text-align:center;box-shadow:var(--shadow)}.toast.team-a{border-color:#ef44448c;color:#fecaca}.toast.team-b{border-color:#3b82f68c;color:#bfdbfe}.toast-enter-active,.toast-leave-active{transition:opacity .18s ease,transform .18s ease}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%,-46%) scale(.96)}.celebrate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;overflow:hidden;pointer-events:none}.confetti{position:absolute;top:-12vh;width:var(--w);height:calc(var(--w) * 1.6);background:var(--c);border-radius:1px;opacity:.95;will-change:transform;animation:confetti-fall var(--dur) linear var(--delay) forwards}@keyframes confetti-fall{0%{transform:translateY(-12vh) rotate(0);opacity:1}to{transform:translate(var(--drift),112vh) rotate(var(--spin));opacity:.85}}.winner-ribbon{position:fixed;top:calc(3.5rem + var(--safe-top));left:50%;transform:translate(-50%);z-index:160;display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.7rem 1.15rem .75rem;border-radius:20px;background:#070b14f2;border:1px solid rgba(250,204,21,.5);box-shadow:0 16px 40px #00000073;color:var(--text);font-weight:900;text-align:center}.winner-congrats{max-width:min(22rem,calc(100vw - 2rem));font-size:clamp(.82rem,2.8vw,1rem);font-weight:800;letter-spacing:-.01em;line-height:1.25;color:#facc15;word-break:break-word}.winner-row{display:flex;align-items:center;gap:.55rem;white-space:nowrap}.winner-trophy{font-size:1.2rem;animation:trophyBounce 1.1s ease-in-out infinite}.winner-name{font-size:1rem;letter-spacing:-.01em}.winner-score{font-variant-numeric:tabular-nums;color:var(--accent);font-size:.95rem}@keyframes trophyBounce{0%,to{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-4px) rotate(6deg)}}.winner-enter-active{transition:transform .5s cubic-bezier(.2,.8,.2,1.5),opacity .4s ease}.winner-leave-active{transition:transform .25s ease,opacity .25s ease}.winner-enter-from,.winner-leave-to{opacity:0;transform:translate(-50%,-22px) scale(.85)}@media(prefers-reduced-motion:reduce){.celebrate{display:none}.court-half.winner,.court-half.winner:after,.court-half.winner .ch-score,.winner-trophy,.court-ball.active,.court-half.players-swapping .court-player,.court-player.is-serve-pop{animation:none}.court-player{transition:none}}@media(orientation:portrait)and (max-width:720px){.court-half{padding:clamp(.4rem,1.5vh,.75rem) .35rem;gap:clamp(.15rem,1vh,.45rem)}.court-screen-left .court-serve-rail{left:clamp(.35rem,4cqw,1rem)}.court-screen-right .court-serve-rail{right:clamp(.35rem,4cqw,1rem)}.court-players{--court-player-side: clamp(.35rem, 4cqw, 1rem)}}@media(orientation:landscape)and (max-height:600px){.play-header{padding:calc(.25rem + env(safe-area-inset-top)) .75rem .25rem;min-height:2.5rem}.header-toolbar .theme-toggle,.header-toolbar .icon-btn,.scorer-status--compact{width:1.9rem;height:1.9rem}.play-header-meta{font-size:.65rem;max-width:min(14rem,48vw)}.statusbar{margin:.25rem 1rem 0;padding:.35rem 1rem}.status-text{font-size:calc(.85rem * var(--court-scale))}.court{margin:0}.ch-name{font-size:calc(clamp(.62rem,calc(var(--court-unit) * .44),1.25rem) * var(--court-scale))}.ch-score{font-size:calc(clamp(2rem,38cqw,8rem) * var(--court-scale))}.play-footer{padding:.45rem calc(1rem + var(--native-chrome-inset-end)) calc(.5rem + env(safe-area-inset-bottom)) calc(1rem + env(safe-area-inset-left,0px))}.footer-btn{padding:.6rem 1rem}}.theme-toggle{width:2.5rem;height:2.5rem;border:1px solid var(--surface-border);border-radius:999px;background:var(--surface);color:var(--text);font-size:1.05rem;display:grid;place-items:center;flex-shrink:0}.theme-toggle:active{transform:scale(.96)}.landing-theme{position:absolute;top:calc(.85rem + var(--safe-top));right:calc(1rem + var(--native-chrome-inset-end));z-index:2}.google-native-signin-btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;width:min(100%,320px);min-height:44px;padding:.55rem 1rem;border:1px solid #747775;border-radius:4px;background:#fff;color:#1f1f1f;font-family:inherit;font-size:.95rem;font-weight:500;line-height:1.2;cursor:pointer}.google-native-signin-btn:active{background:#f8f9fa}.google-native-signin-btn__icon{display:inline-flex;flex-shrink:0}[data-theme=dark] .google-native-signin-btn{background:#131314;border-color:#8e918f;color:#e3e3e3}[data-theme=dark] .google-native-signin-btn:active{background:#1a1b1c}.apple-native-signin-btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;width:min(100%,320px);min-height:44px;padding:.55rem 1rem;border:1px solid #000;border-radius:4px;background:#000;color:#fff;font-family:inherit;font-size:.95rem;font-weight:500;line-height:1.2;cursor:pointer}.apple-native-signin-btn:active{background:#1a1a1a}.apple-native-signin-btn__icon{display:inline-flex;flex-shrink:0}[data-theme=dark] .apple-native-signin-btn{background:#fff;border-color:#fff;color:#000}[data-theme=dark] .apple-native-signin-btn:active{background:#e8e8e8}@media(max-width:720px){.display-layout,.layout-preview{grid-template-areas:"main" "left" "right" "top" "bottom" "a" "b" "c" "d" "c1" "c2" "c3" "side" "r1" "r2" "r3" "r4" "hero" "s1" "s2" "s3" "stand" "bar"!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto!important}.present-board .display-body .display-layout{grid-template-areas:"c1 c2 stand" "c3 c4 stand"!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(10rem,clamp(12rem,24vw,22rem))!important;grid-template-rows:minmax(0,1fr) minmax(0,1fr)!important}.display-layout .court-group-horizontal{flex-direction:column}}:root{--bp-desktop: 960px;--host-rail: 15.5rem;--host-rail-width: var(--host-rail)}.host-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;width:100%;max-width:100%;min-width:0}.host-list-panel{display:flex;flex-direction:column;min-height:0;flex:1}.host-tab-panel-scroll{display:flex;flex-direction:column;min-height:0;min-width:0;flex:1}:is(.modal-card,.sheet-card,.entity-detail-card,.modal,.modal--setup,.pair-picker-panel) :is(input:not([type=checkbox]):not([type=radio]),textarea,select){scroll-margin-top:1rem;scroll-margin-bottom:5rem}.host-topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:var(--app-bar-gap);width:100%;max-width:100%;min-width:0;box-sizing:border-box;min-height:var(--app-bar-height);padding:calc(var(--app-bar-py) + var(--safe-top)) calc(var(--app-bar-px) + var(--native-chrome-inset-end)) var(--app-bar-py) calc(var(--app-bar-px) + env(safe-area-inset-left,0px));border-bottom:1px solid var(--surface-border);background:var(--surface);overflow:hidden}.host-topbar-brand{display:inline-flex;align-items:center;flex-shrink:0;text-decoration:none;color:inherit}.host-topbar-spacer{flex:1;min-width:0}@media(max-width:520px){.host-topbar-brand .app-brand-text{display:none}}.host-topbar-actions{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0}.host-topbar-tournaments-back--mobile{display:none;flex-shrink:0;align-items:center;gap:.2rem;margin:0;padding:.35rem .45rem;border:1px solid var(--surface-border);border-radius:var(--radius-sm);background:var(--fill-subtle);color:var(--text);font:inherit;font-size:.82rem;font-weight:800;text-align:left;cursor:pointer;white-space:nowrap}.host-topbar-back{flex-shrink:0;font-size:1.35rem;line-height:1;font-weight:400;color:var(--serve);margin-top:-.05rem}@media(max-width:959px){.host-topbar-spacer{display:none}.host-topbar-tournaments-back--mobile{display:inline-flex;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}}@media(min-width:960px){.host-topbar-tournaments-back--mobile{display:none}}.host-overview{flex:1;min-height:0;min-width:0;max-width:100%;overflow-y:auto;overflow-x:clip;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;padding:1rem calc(1rem + var(--host-content-inset-end)) calc(1rem + env(safe-area-inset-bottom)) calc(1rem + var(--host-content-inset-start));display:flex;flex-direction:column;gap:1rem}.host-overview--pulling{overscroll-behavior-y:none}.host-overview-inner{display:flex;flex-direction:column;gap:1rem;min-width:0}@media(max-width:959px){.host-overview{padding:1rem calc(1rem + var(--host-content-inset-end)) .5rem calc(1rem + var(--host-content-inset-start))}}.overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.overview-head-main{display:flex;flex-direction:column;gap:.4rem;min-width:0}.overview-head-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.overview-session-badge{font-size:.8rem;color:var(--muted, #6b7280)}.overview-title{margin:0;font-size:1.5rem;line-height:1.15;word-break:break-word}.overview-type{align-self:flex-start}.overview-hint{margin:0;font-size:.85rem}.overview-setting,.overview-quick{padding:.75rem .9rem}.overview-quick .section-label,.overview-setting .section-label{margin-bottom:.55rem}.overview-setting-row{display:flex;align-items:flex-start;gap:.65rem;cursor:pointer;font-size:.9rem;line-height:1.35}.overview-setting-row input{margin-top:.2rem;flex-shrink:0}.overview-setting-row .block-hint{display:block;margin-top:.2rem;font-size:.82rem}.overview-actions{display:flex;flex-wrap:wrap;gap:.5rem}.overview-panel{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius);padding:.85rem 1rem}.overview-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}.overview-panel-title{margin:0;font-size:1rem;display:inline-flex;align-items:center;gap:.45rem}.overview-live-count{font-size:.7rem;font-weight:800;color:#15803d;background:#22c55e24;border-radius:999px;padding:.05rem .45rem}.overview-live-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.overview-live-row{display:flex;align-items:center;gap:.55rem;width:100%;padding:.5rem .6rem;border:1px solid var(--surface-border);border-radius:var(--radius-sm);background:var(--fill-subtle);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .15s ease}.overview-live-row:hover,.overview-live-row:active{background:var(--fill-muted)}.overview-live-dot{width:.55rem;height:.55rem;border-radius:999px;background:#22c55e;flex-shrink:0}.overview-live-teams{flex:1;min-width:0;font-weight:700;font-size:.92rem}.overview-live-meta{display:inline-flex;align-items:center;gap:.6rem;flex-shrink:0}.overview-live-court{font-size:.74rem;font-weight:700;color:var(--text-muted)}.open-play-new-pill{display:inline-flex;align-items:center;max-width:9rem;padding:.06rem .42rem;border-radius:999px;font-size:.88em;font-weight:800;line-height:1.25;color:#7c3aed;background:#7c3aed1f;border:1px solid rgba(124,58,237,.28);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-teams-lg .open-play-new-pill{font-size:.92em}.overview-live-new{display:inline-flex;align-items:center;padding:.06rem .38rem;border-radius:999px;font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;line-height:1.2;color:#7c3aed;background:#7c3aed1f;border:1px solid rgba(124,58,237,.28)}.overview-live-score{font-variant-numeric:tabular-nums;font-weight:800;font-size:.95rem}.overview-empty{margin:0;font-size:.9rem}.overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.6rem}.overview-tile{display:flex;flex-direction:column;gap:.25rem;text-align:left;padding:.8rem .85rem;min-height:5rem;border:1px solid var(--surface-border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;font:inherit;transition:border-color .12s ease,transform .1s ease}.overview-tile:hover{border-color:var(--text-muted)}.overview-tile:active{transform:scale(.985)}.overview-tile-top{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.overview-tile-label{font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.overview-tile-live{font-size:.58rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:#15803d;background:#22c55e24;border-radius:999px;padding:.08rem .4rem}.overview-tile-value{font-size:1.6rem;font-weight:800;line-height:1}.overview-tile-hint{font-size:.74rem;color:var(--text-muted);font-weight:600}@media(min-width:960px){.host-overview{padding:1.4rem;max-width:60rem;margin-inline:auto;width:100%}.overview-title{font-size:1.75rem}.host-section-panel .host-list:not(.match-list){display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.5rem;align-content:start}}html.is-native .host,html.is-native .host--in-tournament,html.is-native .host-layout{width:100%;max-width:100%;height:100%;max-height:100%;min-height:0;overflow:hidden}html.is-native .host-layout-topbar,html.is-native .host-topbar{width:100%;max-width:100%;min-width:0;overflow:hidden}html.is-native .host-layout-content,html.is-native .host-content-panel,html.is-native .host-section-panel{min-width:0;min-height:0;max-width:100%}html.is-native .host-list-leading{padding-right:.2rem}html.is-native .roster-avatar-wrap{padding-right:.15rem;padding-bottom:.15rem}html.is-native .roster-plays{right:0;bottom:0;transform:none}@media(max-width:959px){html.is-native .host-topbar{gap:.45rem;padding-right:calc(var(--app-bar-px) + env(safe-area-inset-right,0px))}html.is-native .host-topbar-brand{flex-shrink:0;min-width:0}html.is-native .host-topbar-actions{margin-left:auto;flex-shrink:0}}.host-bench-btn{flex-shrink:0;align-self:center;margin-right:.35rem;padding:.35rem .6rem;border-radius:var(--radius-sm);border:1px solid var(--surface-border);background:var(--ghost-fill);color:var(--text);font:inherit;font-size:.78rem;font-weight:700;line-height:1.2;cursor:pointer;white-space:nowrap}.host-bench-btn:disabled{opacity:.45;cursor:not-allowed}.host-bench-btn--join{background:#22c55e1f;border-color:#22c55e73;color:#15803d}.host-status-pill{display:inline-flex;align-items:center;width:fit-content;padding:.06rem .42rem;border-radius:999px;font-size:.58rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;line-height:1.25}.host-status-pill--fill{color:#818cf8;background:#6366f11f;border:1px solid rgba(99,102,241,.28)}.host-status-pill--sits{color:var(--text-muted);background:color-mix(in srgb,var(--text-muted) 10%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 22%,transparent)}.host-status-pill--finished{color:#15803d;background:#22c55e1f;border:1px solid rgba(34,197,94,.28)}.host-status-pill--left{color:var(--text-muted);background:color-mix(in srgb,var(--text-muted) 8%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent)}
