:root{color-scheme:dark;--bg-deep: #060b12;--bg-mid: #0a1628;--bg-card: #0f2137;--surface: #132f4c;--surface2: #1a3a5c;--text: #f1f5f9;--muted: #8da4c0;--gold: #c9a227;--gold-dim: #8b7420;--accent: #3b9eff;--accent-hot: #ff4d6d;--danger: #ef4444;--ok: #4ade80;--radius: 14px;--safe-bottom: env(safe-area-inset-bottom, 0);--safe-top: env(safe-area-inset-top, 0);--font-display: "Bebas Neue", Impact, sans-serif;--font-ui: "Barlow Condensed", system-ui, "Segoe UI", sans-serif}*,*:before,*:after{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent}body{margin:0;min-height:100dvh;font-family:var(--font-ui);color:var(--text);padding:calc(12px + var(--safe-top)) 14px calc(16px + var(--safe-bottom));background:var(--bg-deep);background-image:radial-gradient(ellipse 120% 80% at 50% -20%,rgba(59,158,255,.18),transparent 55%),radial-gradient(ellipse 80% 50% at 100% 50%,rgba(201,162,39,.08),transparent 45%),radial-gradient(ellipse 60% 40% at 0% 80%,rgba(255,77,109,.06),transparent 40%),linear-gradient(180deg,var(--bg-mid) 0%,var(--bg-deep) 55%,#030508 100%);background-attachment:fixed}#app{max-width:520px;margin:0 auto}#app.page-live{max-width:100%}h1{font-family:var(--font-ui);font-size:1.65rem;font-weight:700;letter-spacing:.02em;margin:0 0 .75rem;text-transform:uppercase;color:#fff;text-shadow:0 2px 20px rgba(59,158,255,.25)}h2{font-size:1rem;font-weight:600;color:var(--gold);text-transform:uppercase;letter-spacing:.12em;margin:0 0 .6rem}a{color:var(--accent);text-decoration:none}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}label{display:block;font-size:.8rem;font-weight:600;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.06em}input,select,textarea{width:100%;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--surface2);background:#0f2137d9;color:var(--text);font-size:1rem;font-family:var(--font-ui)}input[type=color]{padding:4px;height:52px;cursor:pointer}input[type=file]{padding:10px;font-size:.9rem}textarea{min-height:80px;resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 20px;border:none;border-radius:var(--radius);font-size:1.05rem;font-weight:700;font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:var(--surface2);color:var(--text);box-shadow:0 4px 14px #00000059}.btn:active{transform:scale(.98)}.btn-primary{background:linear-gradient(135deg,#1e5f99 0%,var(--accent) 50%,#60a5fa 100%);color:#fff;border:1px solid rgba(255,255,255,.12);text-shadow:0 1px 2px rgba(0,0,0,.4)}.btn-danger{background:linear-gradient(135deg,#7f1d1d,#b91c1c);color:#fecaca}.btn-ghost{background:#1a3a5c99;border:1px solid var(--surface2);box-shadow:none}.btn-block{width:100%}.hero-brand{text-align:center;padding:8px 0 20px}.hero-brand .eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.28em;color:var(--gold);margin:0 0 6px}.hero-brand .logo-line{height:3px;width:120px;margin:0 auto 14px;background:linear-gradient(90deg,transparent,var(--gold),var(--gold-dim),transparent);border-radius:2px}.hero-brand .eyebrow--brand{margin:0;padding:0;border:none;font-family:var(--font-ui);font-size:clamp(1.35rem,5.5vw,2rem);font-weight:700;letter-spacing:.28em;color:var(--gold);text-transform:uppercase;text-shadow:none;line-height:1.15}.msg{padding:14px 16px;border-radius:var(--radius);background:#132f4ce6;border:1px solid var(--surface2);font-size:.95rem;color:var(--muted);line-height:1.45}.msg.ok{border-color:#4ade8080;color:#bbf7d0}.card{background:linear-gradient(165deg,#132f4cf2,#0a1628eb);border-radius:var(--radius);padding:18px;border:1px solid rgba(201,162,39,.22);box-shadow:0 0 0 1px #0006,0 12px 40px #00000073}.team-setup{border-radius:var(--radius);padding:16px;background:#060b128c;border:1px solid rgba(59,158,255,.15)}.team-setup-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.06)}.team-setup-hint{font-size:.78rem;font-weight:600;color:var(--muted);letter-spacing:.04em}.team-setup-pill{display:inline-flex;align-items:center;font-family:var(--font-ui);font-size:.68rem;font-weight:800;letter-spacing:.22em;padding:8px 16px;border-radius:8px;text-transform:uppercase}.team-setup-pill--home{background:linear-gradient(135deg,#92400e,#c9a227 45%,#eab308);color:#1c1004;box-shadow:0 2px 12px #c9a22759,inset 0 1px #ffffff40}.team-setup-pill--away{background:linear-gradient(135deg,#075985,#0ea5e9,#38bdf8);color:#041c2c;box-shadow:0 2px 12px #0ea5e959,inset 0 1px #fff3}.team-setup--home{border:1px solid rgba(201,162,39,.4);border-left:6px solid #c9a227;background:linear-gradient(155deg,#c9a22724,#060b12b8 42%,#060b12eb);box-shadow:inset 0 0 0 1px #c9a2271a,0 10px 28px #0006}.team-setup--home .team-setup-banner{border-bottom-color:#c9a22738}.team-setup--home .team-setup-hint{color:#d4b87a}.team-setup--home h3{color:#fbbf24}.team-setup--away{border:1px solid rgba(56,189,248,.38);border-left:6px solid #38bdf8;background:linear-gradient(155deg,#0ea5e91f,#060b12b8 42%,#060b12eb);box-shadow:inset 0 0 0 1px #38bdf81a,0 10px 28px #0006}.team-setup--away .team-setup-banner{border-bottom-color:#38bdf833}.team-setup--away .team-setup-hint{color:#93c5fd}.team-setup--away h3{color:#7dd3fc}.team-setup h3{margin:0 0 12px;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.preview-row{display:flex;align-items:center;gap:14px;margin-top:10px;min-height:88px}.preview-hint{font-size:.8rem;color:var(--muted);margin-top:6px}.broadcast-wrap{border-radius:16px;overflow:hidden;overflow-x:clip;max-width:100%;border:2px solid rgba(201,162,39,.45);box-shadow:0 0 30px #c9a2271f,0 20px 50px #0000008c}.broadcast-top{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:linear-gradient(90deg,#0a1628,#132f4c,#0a1628);border-bottom:3px solid var(--gold);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.broadcast-top span:last-child{color:var(--muted);letter-spacing:.08em;font-weight:600}.broadcast-meta{padding:8px 14px 4px;background:#060b12;font-size:.85rem;color:var(--muted);text-align:center}.game-clock-bar{padding:12px 14px 14px;background:#070f14;border-bottom:1px solid rgba(201,162,39,.15);text-align:center}.game-clock-row{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.game-clock-label{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.game-clock-display{font-family:var(--font-display);font-size:2rem;font-weight:400;letter-spacing:.06em;color:var(--gold);line-height:1}@keyframes game-clock-paused{0%,to{opacity:1}50%{opacity:.3}}.game-clock-display--paused{animation:game-clock-paused 1s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.game-clock-display--paused{animation:none;opacity:.65}}.game-clock-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.game-clock-hint{margin:8px 0 0;font-size:.75rem;color:var(--muted);line-height:1.35}.broadcast-scores{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(0,1fr);align-items:center;gap:6px;padding:18px 6px 22px;background:linear-gradient(180deg,#0c1829,#060b12);width:100%;max-width:100%;min-width:0;box-sizing:border-box}.broadcast-scores .score-mega{align-self:center;padding:8px 0;min-width:0;max-width:min(44vw,152px)}.team-col{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 2px;min-width:0;max-width:100%;overflow:hidden}.team-badge-slot{width:88px;height:88px;flex-shrink:0}.broadcast-scores .team-badge-slot{width:min(88px,26vw);height:min(88px,26vw);max-width:100%}.team-badge-slot--audio{cursor:pointer;-webkit-tap-highlight-color:transparent}.team-badge-slot--audio:focus-visible{outline:2px solid rgba(255,255,255,.45);outline-offset:3px}.live-chant-hint{margin:8px 0 0;font-size:.85rem;color:#ffffff8c;text-align:center}.team-lib-audio-row{align-items:center;gap:10px}.team-lib-audio-status{flex:1;font-size:.9rem;color:#ffffff8c}.team-badge-slot .team-badge{width:100%;height:100%}.team-badge{border-radius:50%;overflow:hidden;border:3px solid rgba(255,255,255,.2);box-shadow:0 8px 24px #00000080;background:#1a1a1a}.team-badge img{width:100%;height:100%;object-fit:cover;display:block}.jersey-fallback{display:flex;align-items:center;justify-content:center;position:relative;border-radius:50%;overflow:hidden}.jersey-fallback:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--jersey-c, #333);opacity:1}.jersey-fallback:after{content:"";position:absolute;top:18%;right:22%;bottom:18%;left:22%;border:3px solid rgba(255,255,255,.35);border-radius:8px 8px 20px 20px;pointer-events:none}.jersey-initial{position:relative;z-index:1;font-family:var(--font-display);font-size:2.4rem;line-height:1;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.6)}.score-mega{font-family:var(--font-display);font-size:clamp(1.85rem,10vw,4.5rem);line-height:.95;color:#fff;text-align:center;text-shadow:0 0 20px rgba(59,158,255,.35),0 4px 0 #000;letter-spacing:.04em}.score-sep{font-family:var(--font-display);font-size:clamp(1.35rem,6vw,2.8rem);color:var(--gold);padding:0 2px}.team-name-broadcast{font-weight:700;font-size:.95rem;text-align:center;line-height:1.2;max-width:100%;word-break:break-word;color:#e2e8f0;text-transform:uppercase;letter-spacing:.04em}.point-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;max-width:100%;min-width:0;margin:0 auto;box-sizing:border-box}.point-grid.soccer{grid-template-columns:1fr;max-width:min(200px,100%)}.basket-dial{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;max-width:min(280px,100%);margin:0 auto;user-select:none;-webkit-user-select:none;touch-action:none}.basket-dial__face{flex-shrink:0;display:flex;align-items:center;justify-content:center;margin:0;font:inherit;cursor:pointer;touch-action:none}.basket-dial__chev--outside{flex-shrink:0;width:1.1em;text-align:center;pointer-events:none}.basket-dial__chev{font-size:clamp(1.05rem,4.2vw,1.45rem);font-weight:700;line-height:1;color:#ffffff6b;user-select:none;-webkit-user-select:none}.basket-dial__value{font-family:var(--font-display);font-size:clamp(1.65rem,7.5vw,2.35rem);line-height:1;font-weight:400;letter-spacing:.02em;min-width:2.25ch;text-align:center}.btn-pt{min-height:48px;min-width:0;width:100%;padding:8px 4px;font-size:clamp(.8rem,3.8vw,1rem);font-variant-numeric:tabular-nums;background:linear-gradient(180deg,#1e4976,#132f4c);border:1px solid rgba(255,255,255,.1);color:#fff;touch-action:manipulation;user-select:none;-webkit-user-select:none;box-sizing:border-box}.point-hint{margin:0 0 12px;font-size:.78rem;line-height:1.35;color:var(--muted);text-align:center}.point-hint strong{color:#fbbf24;font-weight:700}.btn-pt[data-pt="3"]{background:linear-gradient(180deg,#7c2d12,#9a3412);border-color:#fb923c59}.btn-pt[data-pt="2"]{background:linear-gradient(180deg,#14532d,#166534);border-color:#4ade8040}.basket-dial .btn-pt.basket-dial__face{width:min(92px,24vw);height:min(92px,24vw);min-width:72px;min-height:72px;max-width:104px;max-height:104px;padding:0;border-radius:14px}.live-scoring-log{padding:0 12px 8px;background:linear-gradient(180deg,#0c1829,#060b12);border-top:1px solid rgba(255,255,255,.06)}.live-scoring-log-toggle{display:block;width:100%;margin:0;padding:12px 14px;border:1px solid rgba(201,162,39,.22);border-radius:var(--radius);background:#132f4c73;color:var(--gold);font-size:.82rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-ui);cursor:pointer;text-align:center;touch-action:manipulation}.live-scoring-log-toggle:active{background:#132f4cbf}.live-scoring-log-panel{margin-top:10px;padding:10px 12px 12px;border-radius:var(--radius);background:#060b12a6;border:1px solid rgba(255,255,255,.08);max-height:min(42vh,320px);overflow-y:auto;-webkit-overflow-scrolling:touch}.live-scoring-log-empty{margin:0;font-size:.88rem;color:var(--muted);text-align:center}.live-scoring-log-list{margin:0;padding:0;list-style:none}.live-scoring-log-item{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:.86rem;line-height:1.35;color:#e2e8f0}.live-scoring-log-item:last-child{border-bottom:none;padding-bottom:0}.live-scoring-log-time{flex-shrink:0;font-variant-numeric:tabular-nums;font-weight:700;color:var(--gold);min-width:3.25rem}.live-scoring-log-body{flex:1;min-width:0;word-break:break-word}.live-scoring-log-unassigned{color:var(--muted);font-style:italic}.live-scoring-log-pts{font-weight:700;color:#94a3b8}.broadcast-actions{padding:14px;background:#060b12e6;border-top:1px solid rgba(201,162,39,.2)}.team-block{text-align:center;margin-bottom:8px}.list-item{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:14px;border-radius:var(--radius);background:#132f4cbf;border:1px solid rgba(201,162,39,.15);color:inherit;text-align:left;width:100%;cursor:pointer;font-size:1rem;font-family:var(--font-ui)}.list-item:hover{border-color:#3b9eff59}.list-item small{display:block;color:var(--muted);margin-top:4px;font-size:.85rem}.list-mini-badge{width:44px;height:44px;flex-shrink:0;border-radius:50%;overflow:hidden;border:2px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;background:#00000040}.list-mini-badge .team-badge{width:100%;height:100%;border:none;box-shadow:none}.list-mini-badge img{width:100%;height:100%;object-fit:cover}.list-mini-badge .jersey-initial{font-size:1.15rem}.list-item-text{flex:1;min-width:0}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat-box{padding:14px;border-radius:var(--radius);background:#132f4cd9;border:1px solid rgba(59,158,255,.15)}.stat-box strong{display:block;font-family:var(--font-display);font-size:2rem;color:var(--gold);line-height:1.1}.stat-grid--main .stat-box--span-2{grid-column:1 / -1}button.stat-box{width:100%;padding:14px;border-radius:var(--radius);cursor:pointer;font-family:inherit;text-align:left;transition:transform .12s ease,border-color .15s ease,box-shadow .15s ease}.stat-box--static{cursor:default}.stat-box--sport{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.stat-box--soccer{border-color:#4ade8047;background:linear-gradient(145deg,#14532d2e,#132f4ce6)}.stat-box--soccer:active{transform:scale(.99)}.stat-box--basket{border-color:#fb923c59;background:linear-gradient(145deg,#9a341233,#132f4ce6)}.stat-box--basket:active{transform:scale(.99)}.stat-box__cta{margin-top:6px;font-size:.78rem;font-weight:700;letter-spacing:.06em;color:var(--accent);text-transform:uppercase}.stats-detail-list{gap:10px}.stats-detail-row{display:block;width:100%;padding:14px 16px;border-radius:var(--radius);text-align:left;cursor:pointer;font-family:inherit;color:inherit;background:linear-gradient(165deg,#132f4cf2,#0a1628eb);border:1px solid rgba(201,162,39,.22);box-shadow:0 4px 16px #00000040;transition:border-color .15s ease,transform .12s ease}.stats-detail-row:active{transform:scale(.995)}.stats-detail-row__meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-size:.8rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.stats-detail-date{color:var(--gold)}.stats-detail-place{flex:1;min-width:0;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;color:#cbd5e1;text-transform:none;letter-spacing:.02em}.stats-detail-teams{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.stats-detail-name{flex:1;min-width:0;word-break:break-word}.stats-detail-score{flex-shrink:0;display:flex;align-items:center;gap:6px;font-family:var(--font-display);font-size:1.65rem;color:#fff}.stats-detail-sep{color:var(--gold);font-weight:400;font-size:1.2rem}.stats-detail-final{margin-top:8px;font-size:.75rem;color:var(--muted);letter-spacing:.04em}.stats-detail-extra{margin-top:6px;font-size:.78rem;color:#94a3b8;font-weight:500}.preview-img{width:100%;border-radius:var(--radius);border:1px solid rgba(201,162,39,.3);margin:12px 0;box-shadow:0 8px 32px #0006}.topbar{display:flex;align-items:center;gap:8px;margin-bottom:14px}.share-headline{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin-bottom:12px}.share-score-line{font-family:var(--font-display);font-size:2rem;color:#fff;text-align:center}.share-team-mini,.share-team-mini .team-badge{width:56px;height:56px}#app.page-home{max-width:520px}.home-upcoming-banner{display:flex;align-items:center;gap:14px;width:100%;margin:0 0 16px;padding:14px 16px;text-align:left;cursor:pointer;font-family:inherit;color:inherit;border:1px solid rgba(201,162,39,.45);border-radius:var(--radius);background:linear-gradient(135deg,#c9a2272e,#132f4cd9 55%,#0a1628f2);box-shadow:0 0 0 1px #00000059,0 8px 28px #00000059;transition:transform .12s ease,border-color .15s ease}.home-upcoming-banner:active{transform:scale(.99)}.home-upcoming-count{flex-shrink:0;min-width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:12px;font-family:var(--font-display);font-size:1.75rem;line-height:1;color:#0a1628;background:linear-gradient(145deg,#eab308 0%,var(--gold) 45%,#a16207 100%);box-shadow:inset 0 1px #ffffff59;animation:home-upcoming-pulse 2.5s ease-in-out infinite}.home-upcoming-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.home-upcoming-copy strong{font-size:.95rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fefce8}.home-upcoming-copy small{font-size:.8rem;font-weight:500;color:var(--muted);line-height:1.35}.home-upcoming-chevron{flex-shrink:0;font-size:1.5rem;font-weight:300;color:var(--gold);opacity:.85}@keyframes home-upcoming-pulse{0%,to{box-shadow:inset 0 1px #ffffff59}50%{box-shadow:inset 0 1px #ffffff73,0 0 18px #eab30859}}.home-hero{position:relative;margin:calc(-4px - var(--safe-top)) -14px 20px;padding:0 0 1px;overflow:hidden;border-radius:0 0 18px 18px}.home-hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(165deg,#0a1628,#050a10 45%,#020408);z-index:0}.home-hero__bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(-12deg,transparent,transparent 40px,rgba(255,255,255,.02) 40px,rgba(255,255,255,.02) 41px);pointer-events:none}.home-hero__red{position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#7f1d1d,#dc2626 35%,#b91c1c);z-index:2;box-shadow:0 2px 12px #dc262673}.home-hero__red:after{content:"";position:absolute;top:6px;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.85}.home-hero__inner{position:relative;z-index:1;padding:28px 20px 18px;text-align:center}.home-hero__network{margin:0 0 12px;font-size:.72rem;font-weight:800;letter-spacing:.42em;color:var(--gold);text-shadow:0 0 24px rgba(201,162,39,.35)}.home-hero__title{margin:0 0 14px;padding:0;font-family:var(--font-display);font-size:clamp(3rem,18vw,4.25rem);font-weight:400;line-height:.95;letter-spacing:.02em;text-transform:uppercase;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.45),0 0 40px rgba(59,158,255,.2);border:none}.home-hero__title-line{display:block}.home-hero__title-accent{display:block;font-size:.55em;letter-spacing:.28em;color:var(--gold);margin-top:4px}.home-hero__lead{margin:0 auto;max-width:340px;font-size:.95rem;line-height:1.45;color:var(--muted);font-weight:500}.home-hero__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}.home-hero__stat{display:flex;flex-direction:column;gap:2px}.home-hero__stat-num{font-family:var(--font-display);font-size:1.65rem;color:#fff;line-height:1;letter-spacing:.06em}.home-hero__stat-lbl{font-size:.65rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.home-hero__ticker{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 14px;background:#00000073;border-top:1px solid rgba(201,162,39,.2)}.home-hero__ticker-live{color:#ef4444;font-size:.65rem;animation:home-pulse 1.4s ease-in-out infinite}.home-hero__ticker-text{font-size:.68rem;font-weight:700;letter-spacing:.12em;color:#94a3b8;text-transform:uppercase}@keyframes home-pulse{0%,to{opacity:1}50%{opacity:.35}}.home-actions{padding:0 2px}.btn-home-primary{min-height:56px;font-size:1.1rem;font-weight:800;letter-spacing:.2em;padding:0 20px;background:linear-gradient(180deg,#e11d48,#9f1239 55%,#881337);color:#fff;border:1px solid rgba(255,255,255,.15);box-shadow:0 4px #4c0519,0 12px 32px #0006;text-transform:uppercase}.btn-home-primary:active{transform:translateY(2px);box-shadow:0 2px #4c0519,0 8px 24px #00000059}.btn-home-secondary{min-height:50px;padding:0 18px;background:linear-gradient(180deg,#1e3a5c,#132f4c);border:1px solid rgba(59,158,255,.25);color:#e2e8f0;font-weight:700;letter-spacing:.14em;text-transform:uppercase;box-shadow:0 4px 16px #00000059}.btn-home-secondary:active{transform:scale(.99)}.toast-stack{position:fixed;z-index:100000;left:50%;bottom:calc(24px + var(--safe-bottom));transform:translate(-50%);width:min(420px,calc(100vw - 28px));display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast-stack .toast{pointer-events:auto}.toast{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:12px;background:linear-gradient(145deg,#1e293b,#0f172a);border:1px solid rgba(255,255,255,.1);box-shadow:0 0 0 1px #00000080,0 16px 48px #0000008c;opacity:0;transform:translateY(12px);transition:opacity .22s ease,transform .22s ease}.toast--in{opacity:1;transform:translateY(0)}.toast--out{opacity:0;transform:translateY(8px)}.toast--error{border-color:#f8717173;box-shadow:0 0 0 1px #7f1d1d80,0 16px 48px #0000008c}.toast--success{border-color:#4ade8066}.toast-icon{flex-shrink:0;width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:800}.toast--error .toast-icon{background:#ef444440;color:#fecaca}.toast--success .toast-icon{background:#22c55e40;color:#bbf7d0}.toast--info .toast-icon{background:#3b9eff33;color:#bae6fd}.toast-text{margin:0;flex:1;font-size:.92rem;line-height:1.4;color:#f1f5f9;font-weight:500}.toast-close{flex-shrink:0;width:32px;height:32px;border:none;border-radius:8px;background:#ffffff0f;color:#ffffffa6;font-size:1.25rem;line-height:1;cursor:pointer;padding:0;font-family:inherit}.toast-close:hover{background:#ffffff1f;color:#fff}.pwa-update-banner{position:fixed;z-index:100010;left:0;right:0;bottom:0;padding:12px 14px calc(12px + env(safe-area-inset-bottom,0));display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;background:linear-gradient(180deg,#0f2137,#060b12);border-top:2px solid var(--gold);box-shadow:0 -10px 40px #0000008c}.pwa-update-banner-text{flex:1 1 200px;font-size:.9rem;font-weight:600;color:#e2e8f0;text-align:center;line-height:1.35}.pwa-update-banner .pwa-update-banner-apply{flex-shrink:0;min-height:44px;padding:0 18px}.pwa-update-banner-dismiss{flex-shrink:0;width:40px;height:40px;border:none;border-radius:10px;background:#ffffff14;color:var(--muted);font-size:1.35rem;line-height:1;cursor:pointer;font-family:inherit}.pwa-update-banner-dismiss:active{background:#ffffff24;color:#fff}.modal-backdrop{position:fixed;z-index:99999;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:20px;background:#02060ce0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity .2s ease}.modal-backdrop--in{opacity:1}.modal-backdrop--out{opacity:0}.modal-card{position:relative;width:100%;max-width:400px;border-radius:16px;overflow:hidden;background:linear-gradient(180deg,#152a42,#0c1822);border:1px solid rgba(201,162,39,.22);box-shadow:0 0 0 1px #00000080,0 24px 64px #000000a6;transform:scale(.96);transition:transform .2s ease}.modal-backdrop--in .modal-card{transform:scale(1)}.modal-card--scroll{max-height:min(85vh,560px);display:flex;flex-direction:column;overflow:hidden}.player-picker-list{flex:1;min-height:0;overflow-y:auto;padding:0 12px 8px;display:flex;flex-direction:column;gap:8px}.player-picker-name{margin:0;text-align:left}.share-timeline{margin:0;padding-left:1.15rem;font-size:.9rem;line-height:1.55;color:var(--text)}.share-timeline li{margin-bottom:.35rem}.modal-accent{height:5px;background:linear-gradient(90deg,#b91c1c 0%,var(--gold) 50%,#0ea5e9 100%)}.modal-title{margin:0;padding:28px 24px 8px;font-size:1.1rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;font-family:var(--font-ui);line-height:1.25}.modal-body{margin:0;padding:0 24px 24px;font-size:.98rem;line-height:1.5;color:var(--muted);font-weight:500}.modal-actions{display:flex;gap:10px;padding:10px 16px 20px;justify-content:flex-end;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.06);background:#0003}.btn-modal{min-height:46px;padding:0 22px;font-weight:700;margin:0;box-shadow:none}.btn-modal-secondary{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#e2e8f0}.btn-modal-primary{background:linear-gradient(180deg,#0ea5e9,#0369a1);border:1px solid rgba(255,255,255,.15);color:#fff}.btn-modal-danger{background:linear-gradient(180deg,#dc2626,#991b1b);border:1px solid rgba(255,255,255,.12);color:#fff}@media (prefers-reduced-motion: reduce){.home-hero__ticker-live,.home-upcoming-count{animation:none}.toast,.modal-backdrop,.modal-card{transition:none}}.settings-block h2{margin:0 0 8px;font-size:1.05rem}.settings-lead{margin:0 0 16px;font-size:.92rem;line-height:1.45;color:var(--muted)}.settings-lead strong{color:#cbd5e1}.settings-pwa-actions{display:flex;flex-direction:column;gap:14px}.settings-block--danger{border-color:#ef444459;background:linear-gradient(180deg,#7f1d1d1f,#0f2137d9)}.settings-block--danger h2{color:#fca5a5}.import-json-label{display:block;margin-top:10px;cursor:pointer;text-align:center;position:relative}.import-json-label input{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.team-lib-form h2{margin:0 0 14px;font-size:1.1rem;color:var(--gold)}.team-lib-form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;align-items:center}.team-lib-list-title{margin:24px 0 10px;font-size:.95rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.team-lib-row{display:flex;flex-direction:column;gap:12px}.team-lib-row__main{display:flex;align-items:center;gap:12px}.team-lib-row__text{flex:1;min-width:0}.team-lib-name{display:block;font-size:1.05rem;text-transform:uppercase;letter-spacing:.04em}.team-lib-row__actions{display:flex;gap:8px;flex-wrap:wrap}.btn-sm{min-height:40px;padding:0 12px;font-size:.88rem}.new-match-hint{margin:0 0 4px;font-size:.88rem}.new-match-actions{gap:10px}.upcoming-list{gap:14px}.upcoming-card{border:1px solid rgba(201,162,39,.28)}.upcoming-card--just-added{box-shadow:0 0 0 2px #c9a227a6;transition:box-shadow .35s ease}.upcoming-card__head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.upcoming-badge{font-size:.65rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);padding:4px 10px;border-radius:6px;background:#c9a2271f;border:1px solid rgba(201,162,39,.35)}.upcoming-date{font-weight:700;color:#e2e8f0;font-size:.95rem}.upcoming-place{margin:0 0 14px;font-size:.88rem;color:var(--muted)}.upcoming-teams{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}.upcoming-team{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;min-width:0;text-align:center;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.upcoming-vs{flex-shrink:0;color:var(--muted);font-size:.8rem;font-weight:700}.upcoming-sport{margin:0 0 14px;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.upcoming-actions{display:flex;flex-direction:column;gap:8px}.settings-theme-toggle{display:flex;gap:10px;flex-wrap:wrap}.home-theme-btn{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 12px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0003;color:var(--muted);cursor:pointer;touch-action:manipulation}.home-theme-icon{display:block;flex-shrink:0}.home-theme-btn--active{border-color:#c9a2278c;background:#c9a2272e;color:var(--gold);box-shadow:inset 0 0 0 1px #c9a22726}html[data-theme=light]{color-scheme:light;--bg-deep: #e8eef4;--bg-mid: #dce6f0;--bg-card: #ffffff;--surface: #cbd5e1;--surface2: #64748b;--text: #0f172a;--muted: #475569;--gold: #92400e;--gold-dim: #78350f;--accent: #1d4ed8;--accent-hot: #be123c;--danger: #dc2626;--ok: #15803d}html[data-theme=light] body{color:var(--text);background:var(--bg-deep);background-image:radial-gradient(ellipse 120% 80% at 50% -20%,rgba(37,99,235,.12),transparent 55%),radial-gradient(ellipse 80% 50% at 100% 50%,rgba(234,179,8,.07),transparent 45%),radial-gradient(ellipse 60% 40% at 0% 80%,rgba(244,63,94,.05),transparent 40%),linear-gradient(180deg,var(--bg-mid) 0%,var(--bg-deep) 55%,#cfd8e4 100%)}html[data-theme=light] h1{color:var(--text);text-shadow:none}html[data-theme=light] .hero-brand .eyebrow--brand,html[data-theme=light] h2{color:var(--gold)}html[data-theme=light] .msg{background:#ffffffeb;border:1px solid var(--surface);color:var(--muted)}html[data-theme=light] .msg.ok{color:#166534}html[data-theme=light] .card{background:linear-gradient(165deg,#fff,#f1f5f9);border:1px solid rgba(234,179,8,.35);box-shadow:0 0 0 1px #0f172a0f,0 12px 32px #0f172a14}html[data-theme=light] .team-setup{background:#ffffffa6;border:1px solid rgba(37,99,235,.2)}html[data-theme=light] .btn{color:#fff;box-shadow:0 4px 14px #0f172a1f}html[data-theme=light] .btn-ghost{background:#ffffffeb;border:1px solid var(--surface);color:var(--text);box-shadow:none}html[data-theme=light] .home-theme-btn{border-color:var(--surface);background:#f1f5f9;color:var(--muted)}html[data-theme=light] .home-theme-btn--active{border-color:#eab308a6;background:#fef3c7f2;color:var(--gold);box-shadow:none}html[data-theme=light] .home-upcoming-banner{border-color:#eab30873;background:linear-gradient(135deg,#fef3c7e6,#fffffff2 55%,#f1f5f9);box-shadow:0 0 0 1px #0f172a0f,0 8px 24px #0f172a1a}html[data-theme=light] .home-upcoming-copy strong{color:var(--text)}html[data-theme=light] .list-item{background:#ffffffe6;border:1px solid rgba(234,179,8,.25)}html[data-theme=light] .list-item:hover{border-color:#2563eb59}html[data-theme=light] .stat-box{background:#ffffffeb;border:1px solid rgba(37,99,235,.18)}html[data-theme=light] .stat-box--soccer{border-color:#16a34a59;background:linear-gradient(145deg,#dcfce799,#fffffff2)}html[data-theme=light] .stat-box--basket{border-color:#ea580c59;background:linear-gradient(145deg,#ffedd5a6,#fffffff2)}html[data-theme=light] .broadcast-wrap{border-color:#eab30873;box-shadow:0 0 18px #eab3081a,0 16px 40px #0f172a1f}html[data-theme=light] .broadcast-top{background:linear-gradient(90deg,#e2e8f0,#f8fafc,#e2e8f0)}html[data-theme=light] .broadcast-meta{background:#f1f5f9}html[data-theme=light] .game-clock-bar{background:#f8fafc;border-bottom-color:#eab30840}html[data-theme=light] .broadcast-scores{background:linear-gradient(180deg,#f1f5f9,#e8eef4)}html[data-theme=light] .score-mega{color:var(--text);text-shadow:0 1px 0 rgba(255,255,255,.8)}html[data-theme=light] .team-name-broadcast{color:var(--text)}html[data-theme=light] .live-chant-hint,html[data-theme=light] .team-lib-audio-status{color:var(--muted)}html[data-theme=light] .team-badge{border-color:#0f172a26;box-shadow:0 8px 20px #0f172a1f}html[data-theme=light] .team-badge-slot--audio:focus-visible{outline-color:#0f172a73}html[data-theme=light] .btn-pt{color:#fff}html[data-theme=light] .live-scoring-log{background:linear-gradient(180deg,#f8fafc,#eef2f7);border-top-color:#0f172a14}html[data-theme=light] .live-scoring-log-toggle{background:#ffffffe6;border-color:#eab30859}html[data-theme=light] .live-scoring-log-toggle:active{background:#f1f5f9}html[data-theme=light] .live-scoring-log-panel{background:#fffffff2;border-color:#0f172a1a}html[data-theme=light] .live-scoring-log-item{border-bottom-color:#0f172a14;color:var(--text)}html[data-theme=light] .live-scoring-log-pts{color:var(--muted)}html[data-theme=light] .broadcast-actions{background:#f8fafcfa;border-top-color:#eab30840}html[data-theme=light] .share-score-line{color:var(--text)}html[data-theme=light] .preview-img{border-color:#eab30859;box-shadow:0 8px 24px #0f172a1a}html[data-theme=light] .toast{background:linear-gradient(145deg,#fff,#f1f5f9);border-color:#0f172a1f;box-shadow:0 0 0 1px #0f172a0f,0 16px 40px #0f172a26}html[data-theme=light] .toast-text{color:var(--text)}html[data-theme=light] .modal-card{background:linear-gradient(180deg,#fff,#f1f5f9);border-color:#eab30859}html[data-theme=light] .modal-title{color:var(--text)}html[data-theme=light] .modal-actions{border-top-color:#0f172a14;background:#f1f5f9f2}html[data-theme=light] .btn-modal-secondary{background:#f1f5f9;border-color:var(--surface);color:var(--text)}html[data-theme=light] .settings-lead strong{color:#334155}html[data-theme=light] .upcoming-date{color:var(--text)}html[data-theme=light] input,html[data-theme=light] select,html[data-theme=light] textarea{background:#fff;color:var(--text);border-color:var(--surface)}
