:root{--bg-page:#0b0e18;--bg-surface:#161b27;--bg-card:#111628;--bg-inset:#0f1117;--bg-inset2:#0f111a;--bg-deeper:#0c1020;--bg-darkest:#0a0d18;--bg-pub-card:#0c0f1a;--bg-surface2:#111827;--bg-active:#1e2440;--bg-row-hover:#0e1220;--bg-navbar:#161b27;--border-navbar:#2a2f3e;--text-navbar:#dde1f0;--text-navbar-muted:#8891b0;--bg-navbar-active:#1e2440;--bg-pub-nav:#0a0d18;--border-pub-nav:#141c30;--border:#2a2f3e;--border-subtle:#1c2340;--border-faint:#1e2a44;--border-mid:#1a1f30;--border-dark:#141c30;--border-active:#2a3058;--text-primary:#dde1f0;--text-secondary:#c5cde8;--text-near:#e8eaf0;--text-muted:#8891b0;--text-faint:#3d4870;--text-faint2:#2d3450;--text-placeholder:#4a5270;--text-note:#7a84a8;--text-dim:#5a6280;--text-dim2:#6a748f;--accent:#3b6bdb;--accent-primary:#2d57d1;--accent-text:#a8c4ff;--accent-radio-bg:#12224a;--accent-link:#5c7cfa;--accent-hover:#3b5fe0;--accent-light:#7b9dff;--accent-dim:#5a82f5;--bg-plan:#162050;--border-plan:#2d4aa0;--text-plan:#8ab4ff;--bg-plan2:#1d2a6a;--border-plan2:#4a6bc8;--text-plan2:#b8d0ff;--bg-plan-g1:#0d1629;--bg-plan-g2:#111f45;--border-plan-g:#1e3070;--bg-plan-featured:#0d1528;--border-plan-feat:#1e3060;--bg-plan-hover:#0e1530}[data-theme=light]{--bg-page:#f0f2f8;--bg-surface:#fff;--bg-card:#f7f9fc;--bg-inset:#edf0f7;--bg-inset2:#eef1f8;--bg-deeper:#e5eaf5;--bg-darkest:#f0f2f8;--bg-pub-card:#fff;--bg-surface2:#f5f7fc;--bg-active:#dce8ff;--bg-row-hover:#eef1ff;--bg-navbar:#1e2748;--border-navbar:#2e3a60;--text-navbar:#dde1f0;--text-navbar-muted:#8891b0;--bg-navbar-active:#2a3660;--bg-pub-nav:#1a2040;--border-pub-nav:#2a3460;--border:#c4cbe0;--border-subtle:#d4daea;--border-faint:#dde2f0;--border-mid:#d8dded;--border-dark:#c0c8de;--border-active:#93b4f8;--text-primary:#1a1f38;--text-secondary:#3a4070;--text-near:#1a1f38;--text-muted:#606890;--text-faint:#9ba4c0;--text-faint2:#b0b8d0;--text-placeholder:#8891b0;--text-note:#8891b0;--text-dim:#7a84a8;--text-dim2:#8a94b0;--accent:#2d57d1;--accent-primary:#2d57d1;--accent-text:#1e4db7;--accent-radio-bg:#dce8ff;--accent-link:#2563eb;--accent-hover:#1e4db7;--accent-light:#2d57d1;--accent-dim:#3b6bdb;--bg-plan:#eff3ff;--border-plan:#93b4f8;--text-plan:#1e4db7;--bg-plan2:#e0edff;--border-plan2:#6b9de0;--text-plan2:#1e4db7;--bg-plan-g1:#eff3ff;--bg-plan-g2:#dce8ff;--border-plan-g:#93b4f8;--bg-plan-featured:#e8edff;--border-plan-feat:#93b4f8;--bg-plan-hover:#dce8ff}html,body,#root{background:var(--bg-page);min-height:100vh;color:var(--text-primary);margin:0;padding:0;font-family:Inter,system-ui,sans-serif}.app{background:var(--bg-page);min-height:100vh;color:var(--text-primary);flex-direction:column;font-family:Inter,system-ui,sans-serif;display:flex}.header{background:var(--bg-surface);border-bottom:1px solid var(--border);padding:0 24px}.header-inner{align-items:center;gap:12px;max-width:860px;height:60px;margin:0 auto;display:flex}.header .logo{font-size:1.6rem}.header h1{letter-spacing:-.3px;flex:1;margin:0;font-size:1.15rem;font-weight:700}.badge{text-transform:uppercase;letter-spacing:.8px;background:var(--accent);color:var(--accent-text);border-radius:6px;padding:3px 8px;font-size:.7rem;font-weight:600}.main{flex-direction:column;flex:1;width:100%;margin:0 auto;padding:0;display:flex}.page{border-left:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);width:100%;max-width:1100px;margin:32px auto;padding:0 32px}@media (width<=1140px){.page{border-left:none;border-right:none;padding:0 24px}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.page-header h1,.page-header h2{letter-spacing:-.3px;margin:0;font-weight:800}.page-header h1{font-size:1.6rem}.page-header h2{font-size:1.3rem}.card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:14px;padding:24px}.card h2{color:var(--text-secondary);margin:0 0 18px;font-size:1rem;font-weight:700}.dropzone{border:2px dashed var(--border-subtle);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;min-height:200px;transition:border-color .2s,background .2s;display:flex;overflow:hidden}.dropzone:hover,.dropzone.has-file{border-color:var(--accent-hover);background:var(--bg-deeper)}.dropzone-hint{text-align:center;color:var(--text-faint)}.drop-icon{margin-bottom:10px;font-size:2.4rem;display:block}.dropzone-hint p{color:var(--text-note);margin:4px 0;font-size:.95rem}.dropzone-hint .sub{color:var(--text-faint2);font-size:.78rem}.dropzone-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:10px;display:flex}.dropzone-btn{pointer-events:all}.preview-img{object-fit:contain;border-radius:8px;max-width:100%;max-height:320px}.controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.format-group label:first-child{color:var(--text-dim2);text-transform:uppercase;letter-spacing:.6px;margin-bottom:8px;font-size:.8rem;font-weight:600;display:block}.radio-group{gap:8px;display:flex}.radio{border:1px solid var(--border);cursor:pointer;color:var(--text-muted);border-radius:7px;align-items:center;gap:6px;padding:6px 14px;font-size:.875rem;transition:all .15s;display:flex}.radio input{display:none}.radio.active{border-color:var(--accent);background:var(--accent-radio-bg);color:var(--accent-text)}.btn-group{gap:8px;display:flex}.btn{cursor:pointer;letter-spacing:.1px;border:none;border-radius:8px;padding:9px 20px;font-size:.875rem;font-weight:700;transition:all .15s}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-ghost{color:var(--text-dim2);border:1px solid var(--border-faint);background:0 0}.btn-ghost:hover{border-color:var(--accent);color:var(--text-secondary)}.theme-toggle{color:var(--pub-nav-text,var(--text-navbar-muted));border:1px solid var(--border-navbar);background:0 0;border-radius:8px;padding:6px 10px;font-size:1rem;line-height:1}.theme-toggle:hover{color:var(--pub-nav-text,var(--text-navbar));border-color:var(--accent-link);background:#0003}.navbar .btn-ghost,.pub-nav .btn-ghost{color:var(--text-navbar-muted);border-color:var(--border-navbar)}.navbar .btn-ghost:hover,.pub-nav .btn-ghost:hover{color:var(--text-navbar);border-color:var(--accent-light);background:var(--bg-navbar-active)}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner{opacity:.7;border:2px solid;border-top-color:#0000;border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}.loading-block{min-height:180px;color:var(--text-dim);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px 20px;font-size:.9rem;display:flex}.loading-inline{color:var(--text-dim);align-items:center;gap:8px;font-size:.88rem;display:inline-flex}.loading-inline .loading-spinner{width:14px;height:14px}.error-card{color:#f08080;background:#1e1010;border-color:#6b2020;font-size:.9rem}.results-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.results-header h2{margin:0}.meta{align-items:center;gap:8px;display:flex}.conf{border-radius:6px;padding:3px 9px;font-size:.78rem;font-weight:600}.conf-good{color:#4ade80;background:#0f2e1a}.conf-mid{color:#facc15;background:#2e2200}.conf-low{color:#f87171;background:#2e0f0f}.format-tag{text-transform:uppercase;letter-spacing:.7px;color:var(--text-dim2);border:1px solid var(--border);border-radius:5px;padding:2px 7px;font-size:.72rem}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:18px;display:flex}.tab{color:var(--text-dim2);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 16px;font-size:.85rem;font-weight:500;transition:all .15s}.tab:hover{color:var(--text-secondary)}.tab.active{color:var(--accent-text);border-bottom-color:var(--accent)}.tab-content{animation:.15s fadein}@keyframes fadein{0%{opacity:0;transform:translateY(4px)}to{opacity:1}}.info-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-bottom:16px;display:grid}.info-cell{background:var(--bg-inset);border:1px solid var(--border);border-radius:8px;padding:10px 14px}.info-label{text-transform:uppercase;letter-spacing:.6px;color:var(--text-placeholder);margin-bottom:4px;font-size:.7rem;display:block}.info-value{color:var(--text-secondary);font-size:.9rem;font-weight:600}.parse-errors{color:#f08080;background:#1e1010;border:1px solid #6b2020;border-radius:8px;margin-bottom:14px;padding:10px 14px;font-size:.82rem}.parse-errors ul{margin:6px 0 0 16px;padding:0}.thumb-wrap{text-align:center}.thumbnail{border:1px solid var(--border);border-radius:8px;max-width:100%;max-height:300px}.stats-table{border-collapse:collapse;width:100%;font-size:.85rem}.stats-table th{text-align:center;color:var(--text-faint);text-transform:uppercase;letter-spacing:.8px;border-bottom:2px solid var(--border-mid);background:var(--bg-page);padding:8px 10px;font-size:.7rem;font-weight:700}.stats-table td{border-bottom:1px solid var(--bg-card);color:var(--text-secondary);text-align:center;padding:10px}.stats-table tr:last-child td{border-bottom:none}.stats-table tr:hover td{background:var(--bg-row-hover)}.empty{color:var(--text-placeholder);text-align:center;padding:24px 0;font-size:.9rem}.raw-text{white-space:pre-wrap;word-break:break-word;color:var(--text-muted);background:var(--bg-inset);border:1px solid var(--border);border-radius:8px;max-height:400px;padding:14px;font-family:JetBrains Mono,Fira Code,monospace;font-size:.8rem;overflow-y:auto}.sub{color:var(--text-placeholder);margin:4px 0;font-size:.78rem}.sub-heading{text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim2);margin:0 0 8px;font-size:.78rem;font-weight:700}.score-block{margin-bottom:16px}.score-table td,.score-table th{min-width:36px}.navbar{background:var(--bg-navbar);border-bottom:2px solid var(--border-navbar);z-index:100;padding:0 24px;position:sticky;top:0}.navbar-inner{align-items:center;gap:24px;max-width:1200px;height:58px;margin:0 auto;display:flex}.navbar-logo{color:var(--text-navbar);white-space:nowrap;letter-spacing:-.5px;align-items:center;gap:8px;font-size:1.2rem;font-weight:800;text-decoration:none;display:flex}.navbar-links{gap:4px;display:flex}.navbar-links a{color:var(--text-navbar-muted);border-radius:6px;padding:6px 12px;font-size:.88rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s}.navbar-links a:hover,.navbar-links a.active{background:var(--bg-navbar-active);color:var(--text-navbar)}.navbar-auth{align-items:center;gap:10px;margin-left:auto;display:flex}.navbar-user{color:var(--text-navbar-muted);font-size:.85rem}.navbar-profile-link{color:var(--text-navbar-muted);align-items:center;gap:8px;text-decoration:none;transition:color .15s;display:flex}.navbar-profile-link:hover{color:var(--text-navbar)}.btn-sm{padding:5px 14px;font-size:.82rem}.btn-xs{padding:3px 8px;font-size:.75rem}.btn-lg{padding:12px 28px;font-size:1rem}.auth-page{background:var(--bg-page);justify-content:center;align-items:center;min-height:calc(100vh - 58px);padding:32px 20px;display:flex}.auth-card{background:var(--bg-card);border:1px solid var(--border-subtle);text-align:center;border-radius:16px;width:100%;max-width:400px;padding:40px}.auth-logo{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-link);margin-bottom:16px;font-size:.8rem;font-weight:800}.brand-stat{color:#fff;letter-spacing:-.5px;font-style:normal;font-weight:800}.brand-flow{color:#1a6bff;letter-spacing:-.5px;font-weight:800}.brand-sport,.brand-sport-inline{color:#ffffff8c;font-style:normal;font-weight:600}.brand-navbar-wordmark{width:auto;height:35px;margin-top:5px;display:block}.brand-wordmark{align-items:center;gap:0;line-height:1;display:flex}.brand-name{letter-spacing:-.5px;align-items:baseline;display:inline-flex}.brand-nav-icon{mix-blend-mode:screen;filter:brightness(1.1);width:auto;height:28px}.brand-wordmark .brand-stat,.brand-wordmark .brand-flow{font-size:1.15rem}.navbar-logo .brand-stat,.brand-wordmark .brand-stat{color:#fff!important}.navbar-logo .brand-flow,.brand-wordmark .brand-flow{color:#1a6bff!important}.navbar-logo .brand-sport,.brand-wordmark .brand-sport{text-transform:uppercase;letter-spacing:.12em;align-self:flex-end;padding-bottom:2px;font-size:.68rem;color:#ffffff80!important}.brand-auth-logo{flex-direction:column;align-items:center;gap:8px;margin-bottom:20px;display:flex}.brand-auth-icon{width:auto;height:64px}.brand-auth-wordmark{align-items:baseline;gap:0;line-height:1;display:flex}.brand-auth-wordmark .brand-stat,.brand-auth-wordmark .brand-flow{font-size:2rem}[data-theme=light] .brand-stat{color:#152b52}[data-theme=light] .brand-flow{color:#1a6bff}[data-theme=light] .brand-sport,[data-theme=light] .brand-sport-inline{color:#152b5280}[data-theme=light] .brand-auth-icon{mix-blend-mode:normal}.brand-auth-icon{mix-blend-mode:screen;filter:brightness(1.1)}.brand-auth-wordmark .brand-sport-inline{text-transform:none;letter-spacing:.02em;padding-left:4px;font-size:1rem}.brand-hero-logo{justify-content:center;align-items:center;margin-bottom:15px;display:flex}.brand-hero-icon{width:auto;height:110px;margin-top:14px;margin-left:20px}[data-theme=light] .brand-hero-icon{mix-blend-mode:normal;filter:none}.brand-hero-wordmark{text-align:left;margin-right:40px}.brand-hero-name{align-items:baseline;line-height:1;display:flex}.brand-hero-name .brand-stat,.brand-hero-name .brand-flow{font-size:2.8rem}.brand-hero-sport{text-transform:uppercase;letter-spacing:.09em;color:#fff;margin-top:2px;margin-left:2px;font-size:1.1rem;font-weight:800}[data-theme=light] .brand-hero-sport{color:#111}.auth-card h2{letter-spacing:-.4px;text-align:center;margin:0 0 6px;font-size:1.4rem;font-weight:800}.auth-sub{color:var(--text-placeholder);margin:0 0 28px;font-size:.85rem}.auth-form{text-align:left;flex-direction:column;gap:14px;display:flex}.auth-form label{color:var(--text-dim2);flex-direction:column;gap:6px;font-size:.85rem;font-weight:500;display:flex}.auth-form input{background:var(--bg-page);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:8px;outline:none;padding:10px 12px;font-size:.95rem;transition:border-color .15s}.auth-form input:focus{border-color:var(--accent-hover)}.auth-form .btn-primary{margin-top:4px}.auth-footer{color:var(--text-placeholder);margin:20px 0 0;font-size:.85rem}.auth-footer a{color:var(--accent-link);font-weight:600;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.landing{max-width:1000px;margin:0 auto;padding:0 24px 80px}.landing-hero{text-align:center;border-bottom:1px solid var(--border-mid);margin-bottom:64px;padding:80px 0 72px;position:relative;overflow:hidden}.landing-hero:before{content:"";pointer-events:none;z-index:0;opacity:1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 340' preserveAspectRatio='xMidYMid slice'%3E%3Crect width='800' height='340' fill='none'/%3E%3C!-- Rink outline --%3E%3Crect x='20' y='20' width='760' height='300' rx='54' ry='54' fill='none' stroke='%235c7cfa' stroke-width='2.5' opacity='0.18'/%3E%3C!-- Blue lines --%3E%3Cline x1='250' y1='20' x2='250' y2='320' stroke='%235c7cfa' stroke-width='2' opacity='0.14'/%3E%3Cline x1='550' y1='20' x2='550' y2='320' stroke='%235c7cfa' stroke-width='2' opacity='0.14'/%3E%3C!-- Red center line --%3E%3Cline x1='400' y1='20' x2='400' y2='320' stroke='%23ef4444' stroke-width='1.5' opacity='0.11'/%3E%3C!-- Center circle --%3E%3Ccircle cx='400' cy='170' r='50' fill='none' stroke='%23ef4444' stroke-width='1.5' opacity='0.11'/%3E%3C!-- Center dot --%3E%3Ccircle cx='400' cy='170' r='3' fill='%23ef4444' opacity='0.14'/%3E%3C!-- Face-off circles (left) --%3E%3Ccircle cx='190' cy='100' r='38' fill='none' stroke='%23ef4444' stroke-width='1.5' opacity='0.09'/%3E%3Ccircle cx='190' cy='240' r='38' fill='none' stroke='%23ef4444' stroke-width='1.5' opacity='0.09'/%3E%3C!-- Face-off dots (left) --%3E%3Ccircle cx='190' cy='100' r='3' fill='%23ef4444' opacity='0.12'/%3E%3Ccircle cx='190' cy='240' r='3' fill='%23ef4444' opacity='0.12'/%3E%3C!-- Face-off circles (right) --%3E%3Ccircle cx='610' cy='100' r='38' fill='none' stroke='%23ef4444' stroke-width='1.5' opacity='0.09'/%3E%3Ccircle cx='610' cy='240' r='38' fill='none' stroke='%23ef4444' stroke-width='1.5' opacity='0.09'/%3E%3C!-- Face-off dots (right) --%3E%3Ccircle cx='610' cy='100' r='3' fill='%23ef4444' opacity='0.12'/%3E%3Ccircle cx='610' cy='240' r='3' fill='%23ef4444' opacity='0.12'/%3E%3C!-- Neutral zone dots --%3E%3Ccircle cx='300' cy='170' r='3' fill='%235c7cfa' opacity='0.14'/%3E%3Ccircle cx='500' cy='170' r='3' fill='%235c7cfa' opacity='0.14'/%3E%3C!-- Goal creases (left) --%3E%3Crect x='20' y='148' width='26' height='44' rx='4' fill='none' stroke='%235c7cfa' stroke-width='1.5' opacity='0.14'/%3E%3Ccircle cx='46' cy='170' r='22' fill='none' stroke='%235c7cfa' stroke-width='1.5' opacity='0.11' stroke-dasharray='0 10000' stroke-linecap='round'%3E%3C/circle%3E%3Cpath d='M46 148 A22 22 0 0 1 46 192' fill='none' stroke='%235c7cfa' stroke-width='1.5' opacity='0.11'/%3E%3C!-- Goal creases (right) --%3E%3Crect x='754' y='148' width='26' height='44' rx='4' fill='none' stroke='%235c7cfa' stroke-width='1.5' opacity='0.14'/%3E%3Cpath d='M754 148 A22 22 0 0 0 754 192' fill='none' stroke='%235c7cfa' stroke-width='1.5' opacity='0.11'/%3E%3C!-- Goals (nets) --%3E%3Crect x='8' y='155' width='14' height='30' rx='2' fill='none' stroke='%235c7cfa' stroke-width='1.5' opacity='0.18'/%3E%3Crect x='778' y='155' width='14' height='30' rx='2' fill='none' stroke='%235c7cfa' stroke-width='1.5' opacity='0.18'/%3E%3C/svg%3E");background-position:50%;background-size:cover;position:absolute;inset:0}[data-theme=light] .landing-hero:before{opacity:.7}.landing-hero>*{z-index:1;position:relative}.landing-hero-badge{text-transform:uppercase;letter-spacing:1.5px;color:var(--accent-link);background:#5c7cfa1f;border:1px solid #5c7cfa40;border-radius:20px;margin-bottom:24px;padding:5px 14px;font-size:.72rem;font-weight:700;display:inline-block}.landing-hero-title{letter-spacing:-1.5px;color:var(--text-primary);margin:0 0 20px;font-size:3.4rem;font-weight:800;line-height:1.1}.landing-sub{color:var(--text-note);max-width:540px;margin:0 auto 36px;font-size:1.1rem;line-height:1.7}.landing-cta{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.landing-features{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:72px;display:grid}.feature-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:14px;padding:24px;transition:border-color .15s}.feature-card:hover{border-color:var(--accent)}.feature-card h3{color:var(--text-primary);margin:0 0 8px;font-size:1rem;font-weight:700}.feature-card p{color:var(--text-dim2);margin:0;font-size:.85rem;line-height:1.6}.landing-section{margin-bottom:64px}.landing-section-title{letter-spacing:-.5px;color:var(--text-primary);max-width:600px;margin:0 0 36px;font-size:1.6rem;font-weight:800}.how-step{flex-direction:column;gap:12px;display:flex}.how-step-num{width:36px;height:36px;color:var(--accent-link);background:#5c7cfa26;border:1px solid #5c7cfa4d;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:800;display:flex}.how-step-body{flex-direction:column;gap:6px;display:flex}.how-step-body h4{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:700}.how-step-btn{align-self:flex-start;margin-top:8px}.landing-bottom-cta{text-align:center;border-top:1px solid var(--border-mid);margin-top:16px;padding:56px 24px}.landing-bottom-cta h2{color:var(--text-primary);letter-spacing:-.5px;margin:0 0 10px;font-size:1.8rem;font-weight:800}.landing-bottom-cta p{color:var(--text-dim2);margin:0 0 28px;font-size:.95rem}.league-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.league-card{background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:12px;align-items:center;gap:14px;padding:18px 20px;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.league-card:hover{border-color:var(--border-active);background:var(--bg-card)}.league-card--new{border:1px dashed var(--border-mid);cursor:pointer;color:var(--text-dim);background:0 0}.league-card--new:hover{border-color:var(--accent-link);color:var(--accent-link);background:color-mix(in srgb, var(--accent-link) 5%, transparent)}.league-card-logo{background:var(--bg-active);width:44px;height:44px;color:var(--accent-link);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;font-weight:800;display:flex}.league-card-logo--add{border:1.5px dashed var(--border-mid);color:inherit;background:0 0;font-size:1.3rem;font-weight:300}.league-card--new:hover .league-card-logo--add{border-color:var(--accent-link)}.league-card-info{flex-direction:column;min-width:0;display:flex}.league-card-name{font-size:.95rem;font-weight:700}.league-card-season{color:var(--text-placeholder);margin-top:2px;font-size:.78rem}.league-card-tier{letter-spacing:.07em;text-transform:uppercase;color:var(--tier-color,#6a748f);background:color-mix(in srgb, var(--tier-color,#6a748f) 12%, transparent);border:1px solid color-mix(in srgb, var(--tier-color,#6a748f) 25%, transparent);border-radius:4px;align-self:flex-start;margin-top:5px;padding:1px 6px;font-size:.67rem;font-weight:700;display:inline-block}.dash-sub-bar{border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;padding:11px 18px;font-size:.85rem;display:flex}.dash-sub-bar--active{background:color-mix(in srgb, var(--tier-color,#5c7cfa) 10%, transparent);border:1px solid color-mix(in srgb, var(--tier-color,#5c7cfa) 25%, transparent)}.dash-sub-bar--free{background:var(--bg-card);border:1px solid var(--border-subtle);justify-content:space-between}.dash-sub-bar-tier{color:var(--tier-color,var(--accent-link));font-weight:700}.dash-sub-bar-note{color:var(--text-muted);font-size:.78rem}.dash-sub-bar-link{color:var(--accent-link);white-space:nowrap;margin-left:auto;font-size:.82rem;text-decoration:none}.dash-sub-bar-link:hover{text-decoration:underline}.dash-create-panel{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:14px;max-width:480px;margin-bottom:28px;padding:28px 32px}.dash-create-panel h3{margin:0 0 4px;font-size:1.1rem}.dash-create-sub{color:var(--text-muted);margin:0 0 20px;font-size:.85rem}.dash-create-form{flex-direction:column;gap:16px;display:flex}.form-field{color:var(--text-dim);flex-direction:column;gap:6px;font-size:.85rem;display:flex}.form-field small{color:var(--text-faint);font-weight:400}.form-field input{background:var(--bg-inset);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:8px;outline:none;padding:9px 12px;font-size:.9rem}.form-field input:focus{border-color:var(--accent-link)}.dash-create-form .btn{align-self:flex-start}.league-layout{min-height:calc(100vh - 58px);display:flex}.league-sidebar{background:var(--bg-row-hover);border-right:1px solid var(--border-mid);flex-direction:column;flex-shrink:0;gap:6px;width:220px;height:calc(100vh - 58px);padding:20px 12px 16px;display:flex;position:sticky;top:58px;overflow-y:auto}.league-content{flex:1;min-width:0;max-width:1200px;padding:32px 36px}.league-content:has(.customizer-page){max-width:none;overflow-y:auto}.sidebar-header{border-bottom:1px solid var(--border-mid);align-items:center;gap:10px;margin-bottom:4px;padding:0 6px 14px;display:flex}.sidebar-league-initials{background:var(--bg-surface);width:36px;height:36px;color:var(--accent-link);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;display:flex}.sidebar-header-info{flex-direction:column;gap:2px;min-width:0;display:flex}.sidebar-league-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.92rem;font-weight:700;overflow:hidden}.sidebar-league-name-link{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:3px;font-size:.92rem;font-weight:700;text-decoration:none;transition:color .15s;display:flex;overflow:hidden}.sidebar-league-name-link:hover{color:var(--text-primary)}.sidebar-public-arrow{color:var(--text-faint);font-size:.72rem;transition:color .15s}.sidebar-league-name-link:hover .sidebar-public-arrow{color:var(--accent-link)}.sidebar-season-wrap{padding:0 4px;position:relative}.sidebar-season-btn{background:var(--bg-page);border:1px solid var(--border-mid);width:100%;color:var(--text-primary);cursor:pointer;text-align:left;border-radius:7px;justify-content:space-between;align-items:center;gap:6px;padding:7px 10px;font-size:.85rem;transition:border-color .15s;display:flex}.sidebar-season-btn.open{border-color:var(--accent-hover);border-bottom-right-radius:0;border-bottom-left-radius:0}.sidebar-season-btn-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sidebar-season-caret{opacity:.6;flex-shrink:0;font-size:.6rem}.sidebar-season-dropdown{background:var(--bg-card);border:1px solid var(--accent-hover);z-index:50;border-top:none;border-radius:0 0 7px 7px;position:absolute;top:100%;left:4px;right:4px;overflow:hidden;box-shadow:0 6px 16px #0000001f}.sidebar-season-option{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:none;padding:8px 10px;font-size:.85rem;transition:background .12s;display:block}.sidebar-season-option:hover{background:var(--bg-hover)}.sidebar-season-option.active{color:var(--accent-link);font-weight:600}.sidebar-season-dot{color:var(--accent-link)}.sidebar-scan-btn{background:var(--bg-plan);border:1px solid var(--border-plan);color:var(--text-plan);border-radius:8px;justify-content:center;align-items:center;gap:7px;margin:4px 4px 8px;padding:9px 12px;font-size:.88rem;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.sidebar-scan-btn:hover{background:var(--bg-plan2);border-color:var(--border-plan2);color:var(--text-plan2)}.sidebar-section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);-webkit-user-select:none;user-select:none;padding:10px 12px 4px;font-size:.66rem;font-weight:700}.sidebar-nav{flex-direction:column;flex:1;gap:1px;display:flex}.sidebar-nav--league{border-top:1px solid var(--border-mid);flex:0;margin-top:6px;padding-top:6px}.sidebar-nav a{color:var(--text-dim);border-radius:7px;padding:8px 12px;font-size:.88rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s}.sidebar-nav a:hover{background:var(--border-mid);color:var(--text-primary)}.sidebar-nav a.active{background:var(--border-mid);color:var(--text-primary);font-weight:700}.sidebar-empty-hint{color:var(--text-faint2);padding:4px 12px;font-size:.82rem;line-height:1.5}.sidebar-footer{border-top:1px solid var(--border-mid);margin-top:auto;padding-top:10px}.sidebar-config-link{color:var(--text-faint);border-radius:7px;padding:8px 12px;font-size:.85rem;text-decoration:none;transition:background .15s,color .15s;display:block}.sidebar-config-link:hover,.sidebar-config-link.active{background:var(--border-mid);color:var(--text-primary)}.editable-sheet{flex-direction:column;gap:0;display:flex}.sheet-action-bar{flex-wrap:wrap;align-items:center;gap:10px;padding:12px 0 16px;display:flex}.edit-section{margin-bottom:24px}.edit-section-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.edit-section h3{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);margin:0;font-size:.9rem}.edit-cell{background:var(--bg-page);border:1px solid var(--border-mid);color:var(--text-primary);border-radius:5px;outline:none;padding:4px 7px;font-family:inherit;font-size:.82rem;transition:border-color .15s}.edit-cell:focus{border-color:var(--accent-hover)}.editable-table .edit-cell{margin:1px}.btn-remove{color:#f87171;cursor:pointer;opacity:.5;background:0 0;border:none;padding:0 4px;font-size:1.1rem;transition:opacity .1s}.btn-remove:hover{opacity:1}.info-edit-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.info-edit-field{flex-direction:column;gap:4px;display:flex}.info-edit-field label{color:var(--text-dim);font-size:.78rem}.info-edit-field input{box-sizing:border-box;width:100%}.error-banner{color:#f87171;background:#200e0e;border:1px solid #5a2020;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:.85rem}.success-banner{color:#4ade80;background:#0c1f10;border:1px solid #1e5a2a;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:.85rem}.badge{text-transform:uppercase;letter-spacing:.4px;border-radius:20px;padding:2px 9px;font-size:.7rem;font-weight:700;display:inline-block}.badge-draft{background:var(--border-dark);color:var(--accent-link)}.badge-final{color:#4ade80;background:#0f2518}.tab-pills{flex-wrap:wrap;gap:4px;display:flex}.tab-pill{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:20px;padding:4px 12px;font-size:.82rem;transition:all .15s}.tab-pill:hover{border-color:var(--accent);color:var(--text-near)}.tab-pill.active{background:var(--bg-active);border-color:var(--accent);color:var(--text-near)}.standings-leader td{color:#f0c040}.standings-leader td strong{color:#f5d060}.standings-div-header td,.pub-standings-div-header td{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-link);background:0 0;border-bottom:none;padding:10px 12px 4px;font-size:.7rem;font-weight:700}.div-view-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.div-view-conf{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.div-view-conf-name{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-link);margin-bottom:10px;font-size:.7rem;font-weight:700}.div-view-div-list{flex-direction:column;gap:10px;display:flex}.div-view-div-name{color:var(--text-secondary);margin-bottom:5px;font-size:.8rem;font-weight:600}.div-view-teams{flex-wrap:wrap;gap:4px;display:flex}.div-view-team{color:var(--text-muted);background:var(--bg-active);border-radius:4px;padding:2px 6px;font-size:.72rem}.div-edit-subsection{margin-bottom:20px}.div-edit-label{text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);margin-bottom:8px;font-size:.72rem;font-weight:700}.div-edit-input{background:var(--bg-inset);border:1px solid var(--border);color:var(--text-secondary);box-sizing:border-box;border-radius:7px;outline:none;width:100%;padding:7px 12px;font-size:.875rem}.div-edit-input:focus{border-color:var(--accent-link)}.div-edit-select{background:var(--bg-inset);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:7px;outline:none;flex-shrink:0;padding:6px 10px;font-size:.82rem}.div-edit-select:focus{border-color:var(--accent-link)}.div-edit-card{background:var(--bg-inset);border:1px solid var(--border);border-radius:9px;margin-bottom:8px;padding:12px 14px}.games-filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.sort-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color .15s}.sort-th:hover,.sort-th--active{color:var(--accent-light)}.sort-arrow{margin-left:3px;font-size:.72em}.pub-sort-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color .15s}.pub-sort-th:hover,.pub-table th.pub-sort-th--active{color:var(--accent-light)}.pub-table th.pub-sort-th--secondary{color:#f0a868}.sort-arrow--secondary{opacity:.45;font-size:.62em}.team-chip{background:var(--bg-card);border:1px solid var(--border-active);color:var(--text-secondary);border-radius:20px;align-items:center;gap:4px;padding:3px 6px 3px 10px;font-size:.78rem;display:inline-flex}.team-chip button{cursor:pointer;color:var(--text-dim2);background:0 0;border:none;padding:0 2px;font-size:1rem;line-height:1}.team-chip button:hover{color:#f87171}.select-sm{background:var(--bg-card);border:1px solid var(--border-active);color:var(--text-secondary);cursor:pointer;border-radius:8px;padding:4px 8px;font-size:.78rem}.select-sm:focus{border-color:var(--accent-link);outline:none}.empty-state{text-align:center;color:var(--text-faint);padding:56px 20px}.empty-state p{margin:0 0 16px;font-size:1rem}.games-list{flex-direction:column;gap:6px;display:flex}.game-row{background:var(--bg-row-hover);border:1px solid var(--border-dark);border-radius:10px;grid-template-columns:auto 1fr auto 1fr auto auto;align-items:center;column-gap:12px;padding:10px 14px;transition:border-color .15s;display:grid;position:relative;overflow:hidden}.game-row:before{content:"";background:var(--home-color,transparent);width:3px;position:absolute;top:0;bottom:0;left:0}.game-row:hover{border-color:var(--border-active)}.game-row-date{color:var(--text-faint);flex-shrink:0;min-width:46px;padding-left:6px;font-size:.75rem}.game-row-matchup{display:contents}.game-row-side{align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.game-row-side--away{flex-direction:row-reverse}.game-row-side--away .game-row-team-name{text-align:left;flex:1}.game-row-side--win .game-row-team-name{color:var(--text-primary);font-weight:700}.game-row-logo{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.game-row-logo-img{object-fit:contain;width:28px;height:28px}.game-row-logo-badge{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:.7rem;font-weight:800;display:flex}.game-row-team-name{color:var(--text-dim2);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;overflow:hidden}.game-row-score{color:var(--text-primary);text-align:center;flex-shrink:0;min-width:68px;font-size:1.05rem}.game-row-vs{opacity:.35;font-size:.8rem}.game-row-meta{flex-shrink:0}.game-row-actions{flex-shrink:0;gap:6px;display:flex}.upload-card{max-width:860px;margin:32px auto 0;padding:28px}.results-card{max-width:1100px;margin:0 auto 32px}.scan-page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.scan-page-title{margin:0;font-size:1.4rem}.scan-learned-note{color:var(--accent-dim);opacity:.85;margin:4px 0 0;font-size:.8rem}.scan-upload-card{margin-bottom:24px}.scan-steps{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 20px;padding:0;list-style:none;display:flex}.scan-step{color:var(--text-faint);align-items:center;gap:8px;font-size:.84rem;display:flex}.scan-step+.scan-step:before{content:"";background:var(--border-mid);width:28px;height:1px;margin-right:8px}.scan-step-num{border:1px solid var(--border-mid);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:.72rem;font-weight:700;display:flex}.scan-step--active{color:var(--text-primary);font-weight:600}.scan-step--active .scan-step-num{background:var(--accent-link);border-color:var(--accent-link);color:#fff}.scan-step--done{color:var(--text-dim)}.scan-step--done .scan-step-num{border-color:var(--accent-link);color:var(--accent-link)}.scan-done-bar{align-items:center;gap:12px;margin-bottom:24px;padding:10px 14px;display:flex}.scan-done-thumb{object-fit:cover;border-radius:6px;flex-shrink:0;width:36px;height:36px}.scan-done-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-dim);flex:1;font-size:.86rem;overflow:hidden}.scan-controls{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:16px;display:flex}.scan-format-group{flex-direction:column;gap:8px;display:flex}.scan-format-radios{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.scan-format-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.6px;font-size:.72rem;font-weight:600}.scan-template-btn{white-space:nowrap;align-self:flex-start;padding:4px 10px;font-size:.75rem}.scan-submit-row{align-items:center;gap:8px;display:flex}.scan-submit-btn{min-width:130px}.loading-screen{min-height:200px;color:var(--text-dim);justify-content:center;align-items:center;font-size:.9rem;display:flex}.league-sidebar-section-label{text-transform:uppercase;letter-spacing:.6px;color:var(--text-faint);padding:12px 10px 4px;font-size:.7rem}.sidebar-empty{color:var(--text-faint);margin:4px 0;padding:0 10px;font-size:.82rem}.season-mgmt-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;padding:20px 24px}.season-mgmt-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.season-mgmt-header h3{margin:0}.season-teams-header{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:.78rem}.add-row-form{gap:8px;margin-top:10px;display:flex}.add-player-form{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.team-roster-section{border:1px solid var(--bg-active);border-radius:8px;margin-bottom:6px;overflow:hidden}.team-roster-toggle{cursor:pointer;width:100%;color:var(--text-near);text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:9px 12px;display:flex}.team-roster-toggle:hover{background:var(--bg-active)}.team-name{flex:1;font-size:.9rem;font-weight:600}.roster-count{color:var(--text-dim);font-size:.78rem}.team-roster-body{background:var(--bg-inset);padding:10px 12px}.save-context-bar{border-bottom:1px solid var(--bg-active);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:10px 0 14px;display:flex}.save-context-label{color:var(--text-dim);white-space:nowrap;font-size:.82rem}.save-context-hint{color:var(--text-dim);font-size:.82rem}.save-context-hint a{color:var(--accent);text-decoration:none}.pub-shell{background:var(--pub-page-bg,var(--bg-page));min-height:100vh;color:var(--pub-text-primary,var(--text-primary));font-family:var(--pub-body-font,inherit);font-size:var(--pub-body-size,inherit);flex-direction:column;display:flex}.pub-main{max-width:var(--pub-max-width,1200px);width:100%;padding:calc(28px * var(--pub-spacing,1)) 32px calc(60px * var(--pub-spacing,1));border-left:var(--pub-border-width,1px) solid var(--pub-card-border,var(--border-subtle));border-right:var(--pub-border-width,1px) solid var(--pub-card-border,var(--border-subtle));flex:1;margin:0 auto}@media (width<=1240px){.pub-main{border-left:none;border-right:none;padding:28px 20px 60px}}.pub-loading{text-align:center;opacity:.5;padding:80px 20px;font-size:1rem}.pub-empty{opacity:.5;padding:16px 0;font-size:.9rem}.pub-empty--center{text-align:center;padding:60px 0}.pub-nav{background:var(--pub-nav-bg,var(--bg-pub-nav));z-index:100;border-bottom:2px solid var(--pub-nav-border,var(--border-pub-nav));position:sticky;top:0}.pub-nav-inner{max-width:var(--pub-max-width,1200px);height:var(--pub-nav-height,56px);align-items:center;gap:0;margin:0 auto;padding:0 20px;display:flex}.pub-nav-logo{flex-shrink:0;align-items:center;gap:10px;margin-right:32px;text-decoration:none;display:flex}.pub-nav-logo-img{height:var(--pub-logo-size,34px);object-fit:contain;flex-shrink:0;width:auto}.pub-nav-logo-text{color:var(--pub-nav-text,var(--text-navbar));letter-spacing:-.4px;white-space:nowrap;font-size:1.1rem;font-weight:800}.pub-nav-links{flex:1;align-items:stretch;gap:0;margin:0;padding:0;list-style:none;display:flex}.pub-nav-links>li{align-items:center;display:flex}.pub-nav-link{height:var(--pub-nav-height,56px);color:var(--pub-nav-text,var(--text-navbar-muted));opacity:.7;letter-spacing:.3px;cursor:pointer;white-space:nowrap;appearance:none;font-family:inherit;font-size:.88rem;font-weight:600;line-height:inherit;box-sizing:border-box;background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;padding:3px 16px 0;text-decoration:none;transition:color .15s,border-color .15s,opacity .15s;display:flex}.pub-nav-link:hover{opacity:1}.pub-nav-link.active{opacity:1;color:var(--pub-nav-text,var(--text-navbar));border-bottom-color:var(--pub-accent,var(--accent-link))}.pub-nav-dropdown-wrap{position:relative}.pub-nav-dropdown-btn{gap:4px}.pub-nav-caret{opacity:.6;font-size:.65rem}.pub-nav-dropdown{background:var(--pub-dropdown-bg,#0f1422);border:1px solid var(--pub-button-bg,var(--border-subtle));border-radius:var(--pub-radius,10px);z-index:200;min-width:200px;max-height:300px;position:absolute;top:calc(100% + 2px);left:0;overflow-y:auto;box-shadow:0 12px 40px #0009}.pub-nav-dropdown-header{text-transform:uppercase;letter-spacing:1px;color:var(--text-faint2);padding:10px 14px 4px;font-size:.68rem;font-weight:700}.pub-nav-dropdown-item{color:var(--pub-dropdown-text,var(--text-dim));align-items:center;gap:8px;padding:9px 14px;font-size:.88rem;text-decoration:none;transition:background .1s,color .1s;display:flex}.pub-nav-dropdown-item:hover{color:var(--text-primary);background:#808aa029}.pub-nav-dropdown-item.selected{color:var(--pub-button-bg,var(--pub-accent,var(--accent-link)))}.pub-nav-dropdown-empty{color:var(--pub-dropdown-text,var(--text-faint2));opacity:.7;padding:10px 14px;font-size:.83rem}.pub-nav-team-logo{object-fit:contain;border-radius:3px;flex-shrink:0;width:22px;height:22px}.pub-nav-team-badge{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:.62rem;font-weight:800;display:flex}.pub-nav-right{align-items:center;gap:8px;margin-left:auto;display:flex}.pub-nav-season-wrap{position:relative}.pub-nav-season-btn{background:var(--pub-button-bg,#0003);color:var(--pub-button-text,var(--pub-nav-text,var(--text-navbar-muted)));letter-spacing:.2px;cursor:pointer;white-space:nowrap;appearance:none;border:1px solid #0003;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-family:inherit;font-size:.75rem;font-weight:600;line-height:1;transition:background .15s,color .15s,opacity .15s;display:flex}.pub-nav-season-btn:hover{opacity:.8}.pub-nav-dropdown--right{left:auto;right:0}.pub-nav-admin-btn{background:var(--pub-button-bg,#0003);color:var(--pub-button-text,var(--pub-nav-text,var(--text-navbar-muted)));border:1px solid #0003;border-radius:6px;padding:6px 14px;font-size:.82rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,opacity .15s}.pub-nav-admin-btn:hover{opacity:.8}.pub-nav-profile-link{color:var(--pub-nav-text,var(--text-navbar-muted));opacity:.85;align-items:center;gap:8px;min-width:0;text-decoration:none;transition:opacity .15s,color .15s;display:inline-flex}.pub-nav-profile-link:hover{opacity:1;color:var(--pub-nav-text,var(--text-navbar))}.pub-nav-profile-avatar{object-fit:cover;border:1px solid #fff3;border-radius:50%;width:28px;height:28px}.pub-nav-profile-initial{background:var(--pub-button-bg,var(--accent-link));width:28px;height:28px;color:var(--pub-button-text,#fff);border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:inline-flex}.pub-nav-profile-name{white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:.82rem;font-weight:600;overflow:hidden}.pub-hero-strip{background:var(--bg-surface);border-bottom:1px solid var(--border);color:var(--text-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:9px 20px;font-size:.82rem;display:flex}.pub-hero-league{color:var(--text-primary);font-weight:700}.pub-hero-sep{opacity:.3}.pub-hero-season{color:var(--text-dim)}.pub-season-live-dot{background:#4ade80;border-radius:50%;width:7px;height:7px;margin-left:4px;display:inline-block;box-shadow:0 0 6px #4ade80}.pub-season-badge{text-transform:uppercase;letter-spacing:.6px;border-radius:4px;margin-left:4px;padding:2px 8px;font-size:.65rem;font-weight:700}.pub-season-badge--regular{color:var(--pub-accent,var(--accent-link));background:#0f1a3a}.pub-season-badge--playoff{color:#f97316;background:#2a1508}.pub-season-badge--exhibition{color:#4ade80;background:#0f2a18}.pub-season-badge--archived{color:var(--text-faint);background:#141620}.pub-season-badge--live{color:#4ade80;background:#0f2a18}.pub-footer{background:var(--pub-footer-bg,var(--bg-surface));border-top:var(--pub-border-width,1px) solid var(--pub-card-border,var(--border));padding:var(--pub-footer-padding,14px 20px)}.pub-footer-inner{max-width:var(--pub-max-width,1200px);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 auto;display:flex}.pub-footer-left{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.pub-footer-sep{opacity:.4}.pub-footer-link{color:var(--text-dim);font-size:.82rem;text-decoration:none;transition:color .15s}.pub-footer-link:hover{color:var(--text-primary)}.pub-footer-tagline{color:var(--pub-footer-text,var(--text-faint2));font-size:.78rem}.pub-footer-social{align-items:center;gap:8px;display:flex}.pub-footer-social-link{background:var(--bg-inset);width:32px;height:32px;color:var(--text-dim);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;text-decoration:none;transition:background .15s,color .15s;display:flex}.pub-footer-social-link:hover{background:var(--accent-blue);color:#fff}.pub-footer-brand{text-align:center;max-width:1200px;color:var(--text-faint2);margin:6px auto 0;font-size:.72rem}.pub-footer-brand-link{color:var(--pub-accent,var(--accent-link));text-decoration:none}.pub-hero{width:100%;min-height:var(--pub-hero-height,260px);background:var(--pub-hero-bg,var(--bg-inset)) center/cover no-repeat;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.pub-hero-overlay{pointer-events:none;background:#000;position:absolute;inset:0}.pub-hero-content{z-index:1;text-align:center;padding:40px 24px;position:relative}.pub-hero-heading{font-size:clamp(1.6rem,5vw,2.8rem);font-weight:var(--pub-heading-weight,800);font-family:var(--pub-heading-font,inherit);color:var(--pub-hero-text,#fff);text-shadow:0 2px 12px #0009;margin:0 0 10px}.pub-hero-sub{color:var(--pub-hero-text,#ffffffd1);text-shadow:0 1px 8px #00000080;font-size:clamp(.9rem,2.5vw,1.15rem);font-family:var(--pub-body-font,inherit);margin:0}.pub-gallery-grid{gap:10px;display:grid}.pub-gallery-item{min-width:0;margin:0}.pub-gallery-link{border-radius:8px;display:block;overflow:hidden}.pub-gallery-img{aspect-ratio:4/3;object-fit:cover;border-radius:8px;width:100%;transition:transform .2s}.pub-gallery-link:hover .pub-gallery-img{transform:scale(1.04)}.pub-gallery-caption{color:var(--text-dim);text-align:center;margin:5px 0 0;font-size:.75rem}.hb-gallery-grid{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.hb-gallery-item{flex-direction:column;align-items:center;gap:4px;width:100px;display:flex}.hb-gallery-thumb{object-fit:cover;border:1px solid var(--border-dark);border-radius:6px;width:100px;height:64px}.hb-gallery-caption{width:100%;padding:2px 5px;font-size:.7rem}.ws-page{max-width:1100px}.ws-layout{grid-template-columns:1fr 1fr;align-items:start;gap:32px;display:grid}@media (width<=860px){.ws-layout{grid-template-columns:1fr}}.ws-col{flex-direction:column;display:flex}.ws-social-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.ws-social-icon{text-align:center;flex-shrink:0;width:20px;font-size:1rem}.ws-social-label{color:var(--text-dim);flex-shrink:0;min-width:80px;font-size:.8rem}.ws-social-input{flex:1;min-width:0}.ws-hero-body{flex-wrap:wrap;align-items:flex-start;gap:16px;margin-top:16px;display:flex}.ws-hero-image-col{flex-direction:column;flex-shrink:0;gap:8px;display:flex}.ws-hero-upload-label{cursor:pointer;display:block}.ws-hero-img{object-fit:cover;border:1px solid var(--border-dark);border-radius:7px;width:160px;height:88px;display:block}.ws-hero-img-placeholder{background:var(--bg-inset);border:2px dashed var(--border-dark);width:160px;height:88px;color:var(--text-dim);border-radius:7px;justify-content:center;align-items:center;font-size:.78rem;display:flex}.ws-hero-fields{flex-direction:column;flex:1;gap:10px;min-width:160px;display:flex}.ws-hero-field{flex-direction:column;gap:5px;display:flex}.ws-hero-overlay-row{align-items:center;gap:8px;display:flex}.ws-hero-slider{flex:1;min-width:0}.ws-hero-overlay-pct{color:var(--text-dim);text-align:right;flex-shrink:0;min-width:34px;font-size:.78rem}.ws-color-row{align-items:center;gap:10px;margin:8px 0 16px;display:flex}.ws-color-swatch{cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;width:40px;height:34px;padding:0}.ws-color-input{flex:1;min-width:0}.ws-full-input{width:100%}.ws-save-bar{align-items:center;gap:12px;padding-top:4px;display:flex}.ws-statvis-page{flex-direction:column;gap:8px;display:flex}.ws-statvis-page+.ws-statvis-page{border-top:1px solid var(--border);padding-top:14px}.ws-statvis-page-title{color:var(--text);font-size:.92rem;font-weight:600}.ws-statvis-group{flex-direction:column;gap:6px;display:flex}.ws-statvis-group-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);font-size:.74rem}.ws-statvis-chips{flex-wrap:wrap;gap:7px;display:flex}.ws-statvis-chip{cursor:pointer;border:1px solid var(--border);background:var(--bg-inset);color:var(--text-dim);border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:.8rem;line-height:1;transition:background .12s,border-color .12s,color .12s,opacity .12s;display:inline-flex}.ws-statvis-chip:hover{border-color:var(--accent,#5c7cfa)}.ws-statvis-chip--on{background:color-mix(in srgb, var(--accent,#5c7cfa) 16%, transparent);border-color:var(--accent,#5c7cfa);color:var(--text)}.ws-statvis-chip:not(.ws-statvis-chip--on){opacity:.6;text-decoration:line-through}.ws-statvis-dot{background:var(--text-dim);opacity:.4;border-radius:50%;flex-shrink:0;width:7px;height:7px}.ws-statvis-dot--on{opacity:1;background:#4ade80}.pub-table{border-collapse:collapse;width:100%;font-size:var(--pub-body-size,.88rem)}.pub-table thead tr{background:var(--pub-table-header,var(--bg-inset))}.pub-table th{padding:var(--pub-table-density,10px 12px);text-align:center;text-transform:uppercase;letter-spacing:.8px;color:var(--pub-text-muted,var(--text-muted));border-bottom:2px solid var(--border-dark);font-size:.7rem;font-weight:700}.pub-table td{padding:var(--pub-table-density,11px 12px);text-align:center;border-bottom:1px solid var(--border-faint);background:var(--pub-table-bg,transparent)}.pub-table tr:hover td{background:var(--bg-row-hover)}.pub-table-leader td{background:#5c7cfa0f}.pub-table-row--clickable{cursor:pointer}.pub-table-row--clickable:hover td{background:#5c7cfa14}.pub-th-rank{width:36px}.pub-th-team{min-width:140px;text-align:left!important}.pub-th-player{min-width:160px;text-align:left!important}.pub-td-rank{color:var(--text-muted);font-size:.8rem}.pub-td-name,.pub-td-name--left{text-align:left!important}.pub-td-pts{color:var(--text-primary);font-weight:800}.pub-td-pos{color:#4ade80;font-weight:700}.pub-td-neg{color:#f87171}.pub-td-player{text-align:left!important}.pub-td-team{color:var(--text-faint);font-size:.8rem;text-align:left!important}.pub-team-link,.pub-player-link{color:var(--text-primary);align-items:center;gap:8px;font-weight:600;text-decoration:none;display:inline-flex}.pub-team-link:hover,.pub-player-link:hover{color:var(--pub-accent,var(--accent-link))}.pub-home-team-link{color:var(--text-primary);white-space:nowrap;align-items:center;gap:8px;font-weight:600;text-decoration:none;display:inline-flex}.pub-home-team-link:hover{color:var(--pub-accent,var(--accent-link))}.pub-standings-logo{object-fit:contain;flex-shrink:0;width:24px;height:24px}.pub-standings-logo--placeholder{border-radius:4px;display:inline-block}.pub-lb-logo{object-fit:contain;flex-shrink:0;width:22px;height:22px}.pub-lb-logo--placeholder{border-radius:4px;display:inline-block}.pub-lb-refetching{opacity:.55;pointer-events:none;transition:opacity .15s}.pub-jersey{color:var(--text-faint);width:36px;font-size:.8rem}.pub-pos{color:var(--text-faint);width:44px;font-size:.8rem}.pub-jersey-num{color:var(--text-faint);font-size:.78rem}.pub-home-block--wide{grid-column:1/-1}.pub-home-card{background:var(--pub-card-bg,var(--bg-pub-card));border:var(--pub-border-width,1px) solid var(--pub-card-border,var(--border));border-radius:var(--pub-radius,12px);padding:var(--pub-card-padding,calc(20px * var(--pub-spacing,1)));min-width:0;box-shadow:var(--pub-card-shadow,0 2px 8px #0000000f)}.pub-card-header{border-bottom:1px solid var(--border-dark);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 8px;margin-bottom:16px;padding-bottom:12px;display:flex}.pub-card-title{text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);margin:0;font-size:.75rem;font-weight:700}.pub-card-more{color:var(--pub-accent,var(--accent-link));font-size:.8rem;font-weight:600;text-decoration:none}.pub-card-more:hover{text-decoration:underline}.pub-carousel{background:var(--pub-card-bg,var(--bg-pub-card));border:var(--pub-border-width,1px) solid var(--pub-card-border,var(--border));border-radius:var(--pub-radius,14px);margin-bottom:var(--pub-section-gap,20px);box-shadow:var(--pub-card-shadow,0 2px 12px #00000012);overflow:hidden}.pub-carousel-nav{border-bottom:1px solid var(--border-dark);background:var(--bg-inset);align-items:center;gap:8px;padding:10px 14px;display:flex}.pub-carousel-arrow{border:1px solid var(--border-mid);background:var(--bg-card);width:32px;height:32px;color:var(--text-primary);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.3rem;line-height:1;transition:background .15s,border-color .15s;display:flex}.pub-carousel-arrow:hover:not(:disabled){border-color:var(--pub-button-bg,var(--accent-dim));color:var(--pub-button-bg,var(--text-primary));background:#808aa029}.pub-carousel-arrow:disabled{opacity:.3;cursor:default}.pub-carousel-day{text-align:center;flex:1}.pub-carousel-day-label{color:var(--text-primary);font-size:.9rem;font-weight:700}.pub-carousel-day-count{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:1px;font-size:.7rem;display:block}.pub-carousel-track{-webkit-overflow-scrolling:touch;scrollbar-width:thin;align-items:stretch;gap:12px;padding:16px;display:flex;overflow-x:auto}.pub-carousel-track .pub-gc{flex:0 0 200px}.pub-carousel-empty{color:var(--text-faint2);padding:8px 0;font-size:.88rem}.pub-carousel-all-btn{border:1px dashed var(--pub-button-bg,var(--border-mid));min-width:90px;height:100%;color:var(--pub-button-bg,var(--accent-link));white-space:nowrap;border-radius:10px;flex:none;justify-content:center;align-self:center;align-items:center;padding:12px 16px;font-size:.82rem;font-weight:600;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.pub-carousel-all-btn:hover{border-color:var(--pub-button-bg,var(--accent-dim));background:#808aa029}.pub-home-2col{grid-template-columns:1.2fr 1fr;align-items:start;gap:20px;margin-bottom:20px;display:grid}.pub-home-2col--single{grid-template-columns:1fr}@media (width<=700px){.pub-home-2col{grid-template-columns:1fr}.pub-carousel-track .pub-gc{flex:0 0 170px}}.pub-result-date{color:var(--text-faint2);margin-bottom:6px;padding:0 4px;font-size:.72rem}.pub-result-matchup{align-items:center;gap:8px;padding:0 4px;display:flex}.pub-result-side{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.pub-result-side--away{justify-content:flex-end}.pub-result-side--win .pub-result-team-name{color:var(--text-primary);font-weight:800}.pub-result-logo-wrap{flex-shrink:0}.pub-result-logo{object-fit:contain;width:28px;height:28px}.pub-result-logo-badge{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:800;display:flex}.pub-result-team-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:500;overflow:hidden}.pub-result-score-block{flex-shrink:0;align-items:center;gap:5px;padding:0 8px;display:flex}.pub-result-score-num{color:var(--text-secondary);text-align:center;min-width:18px;font-size:1.1rem;font-weight:700}.pub-result-score-num--win{color:var(--text-primary);font-weight:900}.pub-result-score-sep{color:var(--text-faint2);font-size:.9rem}.pub-gc-list{flex-direction:column;gap:8px;display:flex}.pub-gc{background:var(--bg-pub-card);border:1px solid var(--border);border-radius:10px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:block;overflow:hidden;box-shadow:0 1px 4px #0000000d}.pub-gc:hover{border-color:var(--pub-accent,var(--accent-dim));box-shadow:0 4px 14px #0000001a}.pub-gc-header{background:var(--bg-inset);border-bottom:1px solid var(--border-dark);justify-content:space-between;align-items:center;padding:6px 12px;font-size:.7rem;display:flex}.pub-gc-status{text-transform:uppercase;letter-spacing:.07em;font-size:.7rem;font-weight:700}.pub-gc-status--final{color:var(--text-muted)}.pub-gc-status--scheduled{color:var(--pub-button-bg,var(--pub-accent,var(--accent-link)))}.pub-gc-meta{color:var(--text-muted);font-size:.7rem}.pub-gc-teams{flex-direction:column;gap:0;padding:10px 12px;display:flex}.pub-gc-team{justify-content:space-between;align-items:center;gap:8px;padding:7px 0;display:flex}.pub-gc-team+.pub-gc-team{border-top:1px solid var(--border-dark)}.pub-gc-team-info{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.pub-gc-logo{object-fit:contain;flex-shrink:0;width:30px;height:30px}.pub-gc-logo-badge{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.78rem;font-weight:800;display:flex}.pub-gc-team-text{flex-direction:column;min-width:0;display:flex}.pub-gc-team-name{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:500;overflow:hidden}.pub-gc-record{color:var(--text-muted);margin-top:1px;font-size:.68rem}.pub-gc-score{color:var(--text-dim2);text-align:right;flex-shrink:0;min-width:22px;font-size:1.25rem;font-weight:600}.pub-gc-score--win{color:var(--text-primary);font-weight:900}.pub-archived-section{margin-top:40px}.pub-section-title{text-transform:uppercase;letter-spacing:.8px;color:var(--text-faint2);margin-bottom:14px;font-size:.72rem;font-weight:700}.pub-archived-grid{flex-wrap:wrap;gap:10px;display:flex}.pub-archived-card{background:var(--bg-pub-card);border:1px solid var(--border-dark);color:var(--text-primary);border-radius:8px;align-items:center;gap:8px;padding:12px 18px;font-size:.88rem;text-decoration:none;transition:border-color .15s;display:flex}.pub-archived-card:hover{border-color:var(--pub-button-bg,var(--pub-accent,var(--accent)))}.pub-archived-name{font-weight:700}.pub-sections{flex-direction:column;gap:24px;margin-top:32px;display:flex}.pub-section-block{background:var(--bg-pub-card);border:1px solid var(--border-dark);border-radius:12px;padding:20px 24px}.pub-section-block-title{color:var(--text-primary);margin:0 0 10px;font-size:1rem;font-weight:700}.pub-section-block-body p{color:var(--text-secondary);margin:0 0 8px;font-size:.9rem;line-height:1.65}.pub-section-block-body p:last-child{margin-bottom:0}.section-editor-block{background:var(--bg-inset);border:1px solid var(--border-dark);border-radius:8px;flex-direction:column;gap:10px;padding:14px;display:flex}.section-editor-row{align-items:center;gap:8px;display:flex}.section-editor-vis{color:var(--text-dim);cursor:pointer;flex-shrink:0;align-items:center;gap:5px;font-size:.8rem;display:flex}.section-editor-body{resize:vertical;width:100%;font-size:.85rem;line-height:1.5}.pub-lb-list{flex-direction:column;display:flex}.pub-lb-row{border-bottom:1px solid var(--border-dark);align-items:center;gap:8px;padding:5px 0;display:flex}.pub-lb-row:last-child{border-bottom:none}.pub-lb-rank{color:var(--text-muted);text-align:right;flex-shrink:0;width:18px;font-size:.76rem}.pub-lb-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.85rem;font-weight:600;text-decoration:none;overflow:hidden}.pub-lb-name:hover{color:var(--pub-accent,var(--accent-link))}.pub-lb-val{color:var(--text-primary);flex-shrink:0;font-size:.85rem;font-weight:800}.hb-row{background:var(--bg-inset);border:1px solid var(--border-dark);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;display:flex}.hb-row--drag-over{border-color:var(--accent-dim);background:var(--bg-active)}.hb-row--hidden{opacity:.4}.hb-arrows{flex-direction:column;flex-shrink:0;gap:2px;display:flex}.hb-arrow{border:1px solid var(--border-dark);cursor:pointer;width:22px;height:17px;color:var(--text-dim);background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:.58rem;display:flex}.hb-arrow:hover:not(:disabled){background:var(--bg-active);color:var(--text-primary)}.hb-arrow:disabled{opacity:.2;cursor:default}.hb-icon{flex-shrink:0;font-size:1rem}.hb-label{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.82rem;font-weight:600;overflow:hidden}.hb-opts{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.hb-opt-label{color:var(--text-dim);white-space:nowrap;align-items:center;gap:4px;font-size:.76rem;display:flex}.hb-opt-select{background:var(--bg-surface);border:1px solid var(--border-dark);color:var(--text-primary);cursor:pointer;border-radius:5px;padding:2px 6px;font-size:.75rem}.hb-vis{color:var(--text-dim);cursor:pointer;white-space:nowrap;flex-shrink:0;align-items:center;gap:5px;font-size:.76rem;display:flex}.pub-tab{color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-1px;padding:10px 20px;font-size:.88rem;font-weight:600;transition:color .15s,border-color .15s}.pub-tab:hover{color:var(--text-primary)}.pub-tab.active{color:var(--pub-button-bg,#fff);border-bottom-color:var(--pub-button-bg,var(--pub-accent,var(--accent-link)))}.pub-games-filterbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.pub-games-filter{gap:8px;display:flex}.pub-games-select{background:var(--pub-dropdown-bg,var(--bg-surface));border:1px solid var(--pub-button-bg,var(--border-subtle));color:var(--pub-dropdown-text,var(--text-primary));cursor:pointer;border-radius:8px;padding:5px 10px;font-size:.83rem}.pub-games-clear{border:1px solid var(--border-subtle);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:8px;padding:5px 12px;font-size:.8rem}.pub-games-clear:hover{background:var(--bg-active)}.pub-filter-btn{background:var(--bg-pub-card);border:1px solid var(--border-dark);color:var(--text-faint);cursor:pointer;border-radius:6px;padding:6px 16px;font-size:.82rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.pub-filter-btn:hover,.pub-filter-btn.active{background:var(--pub-button-bg,var(--border-dark));color:var(--pub-button-text,var(--text-primary));border-color:var(--pub-button-bg,var(--border-subtle))}.pub-games-group{margin-bottom:28px}.pub-day-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin;gap:6px;margin-bottom:16px;padding-bottom:6px;display:flex;overflow-x:auto}.pub-day-tab{background:var(--bg-pub-card);border:1px solid var(--border-dark);min-width:64px;color:var(--text-muted);cursor:pointer;border-radius:10px;flex-direction:column;flex-shrink:0;align-items:center;gap:1px;padding:7px 12px;transition:border-color .15s,color .15s,background .15s;display:flex}.pub-day-tab:hover{color:var(--text-primary);border-color:var(--border-subtle)}.pub-day-tab--active{background:var(--pub-button-bg,var(--accent-link));border-color:var(--pub-button-bg,var(--accent-link));color:var(--pub-button-text,#fff)}.pub-day-tab-weekday{text-transform:uppercase;letter-spacing:.6px;opacity:.75;font-size:.6rem;font-weight:700}.pub-day-tab-date{white-space:nowrap;font-size:.84rem;font-weight:700}.pub-game-card{background:var(--bg-pub-card);border:1px solid var(--border-dark);border-radius:12px;margin-bottom:8px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:block;position:relative;overflow:hidden}.pub-game-card:hover{border-color:var(--border-active);box-shadow:0 4px 20px #00000040}.pub-game-card:before{content:"";background:var(--home-color,#5c7cfa);width:4px;position:absolute;top:0;bottom:0;left:0}.pub-game-card:after{content:"";background:var(--away-color,#5c7cfa);width:4px;position:absolute;top:0;bottom:0;right:0}.pub-gc-body{align-items:center;padding:14px 20px;display:flex}.pub-gc-team{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.pub-gc-team--away .pub-gc-team-col{text-align:right}.pub-gc-team--win .pub-gc-team-name{color:var(--text-primary);font-weight:800}.pub-gc-logo-wrap{flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.pub-gc-logo-img{object-fit:contain;width:44px;height:44px}.pub-gc-logo-badge{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.05rem;font-weight:800;display:flex}.pub-gc-team-col{flex-direction:column;flex:1;min-width:0;display:flex}.pub-gc-team-name{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.93rem;font-weight:600;overflow:hidden}.pub-gc-sog{color:var(--text-muted);margin-top:2px;font-size:.72rem;font-weight:500}.pub-gc-center{flex-direction:column;flex-shrink:0;align-items:center;min-width:120px;padding:0 24px;display:flex}.pub-gc-scores{align-items:center;gap:10px;display:flex}.pub-gc-score-num{color:var(--text-dim2);font-size:2rem;font-weight:900;line-height:1}.pub-gc-score-num--win{color:var(--text-primary)}.pub-gc-score-sep{color:var(--border-active);font-size:1.1rem;font-weight:300}.pub-gc-time{color:var(--text-dim);font-size:1.1rem;font-weight:700}.pub-gc-status-label{text-transform:uppercase;letter-spacing:1px;color:var(--text-faint2);margin-top:3px;font-size:.6rem;font-weight:700}.pub-gc-arena-label{color:var(--text-faint2);margin-top:2px;font-size:.65rem}@media (width<=560px){.pub-gc-logo-wrap,.pub-gc-logo-img{width:34px;height:34px}.pub-gc-logo-badge{width:30px;height:30px;font-size:.85rem}.pub-gc-score-num{font-size:1.5rem}.pub-gc-center{min-width:90px;padding:0 12px}.pub-gc-team-name{font-size:.8rem}}.pub-stat-pills{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.pub-stat-pill{background:var(--bg-pub-card);border:1px solid var(--border-dark);color:var(--text-faint);cursor:pointer;border-radius:20px;padding:6px 16px;font-size:.82rem;font-weight:600;transition:all .15s}.pub-stat-pill:hover,.pub-stat-pill.active{background:var(--pub-button-bg,var(--pub-accent,var(--accent-link)));border-color:var(--pub-button-bg,var(--pub-accent,var(--accent-link)));color:var(--pub-button-text,#fff)}.pub-lb-filterbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.pub-lb-search{background:var(--pub-dropdown-bg,var(--bg-inset));color:var(--pub-dropdown-text,var(--text-primary));border:1px solid var(--pub-button-bg,var(--border-dark));border-radius:8px;min-width:180px;padding:5px 12px;font-size:.8rem}.pub-lb-search::placeholder{color:var(--text-muted)}.pub-lb-search:focus{border-color:var(--pub-accent,var(--accent-link));outline:none}.pub-filter-wrap{position:relative}.pub-filter-toggle{background:var(--pub-dropdown-bg,var(--bg-inset));color:var(--pub-dropdown-text,var(--text-primary));border:1px solid var(--pub-button-bg,var(--border-dark));cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:5px 14px;font-size:.8rem;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.pub-filter-toggle:hover{border-color:var(--pub-accent,var(--accent-link))}.pub-filter-toggle--active{background:var(--pub-button-bg,var(--pub-accent,var(--accent-link)));color:var(--pub-button-text,#fff);border-color:var(--pub-button-bg,var(--pub-accent,var(--accent-link)))}.pub-filter-icon{flex-shrink:0}.pub-filter-count{min-width:18px;height:18px;color:inherit;background:#ffffff40;border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:.68rem;font-weight:700;display:inline-flex}.pub-filter-backdrop{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000008c;position:fixed;inset:0}.pub-filter-modal{z-index:1001;background:var(--bg-pub-card,var(--bg-surface));border:1px solid var(--border-dark);border-radius:14px;width:380px;max-width:92vw;max-height:86vh;padding:20px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 24px 60px #00000080}.pub-filter-modal-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.pub-filter-modal-head .pub-filter-popup-label{margin-bottom:0}.pub-filter-modal-title{color:var(--text-primary);font-size:1rem;font-weight:700}.pub-filter-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:1.5rem;line-height:1}.pub-filter-close:hover{color:var(--text-primary)}.pub-filter-popup-label{text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);margin-bottom:10px;font-size:.68rem;font-weight:700}.pub-filter-split-grid{flex-direction:column;gap:8px;display:flex}.pub-filter-split-grid .pub-season-select{width:100%}.pub-filter-active-list{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.pub-filter-chip{background:var(--bg-inset);border:1px solid var(--border-dark);color:var(--text-primary);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:5px 10px;font-size:.8rem;font-weight:600;display:flex}.pub-filter-chip-x{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:1.1rem;line-height:1}.pub-filter-chip-x:hover{color:#e05c5c}.pub-filter-add-row{align-items:center;gap:6px;display:flex}.pub-filter-add-row .pub-season-select{flex:1;min-width:0}.pub-filter-op{flex:0 0 58px!important}.pub-filter-val{flex:0 0 64px;width:64px;padding:5px 8px;min-width:0!important}.pub-filter-add-btn{background:var(--pub-button-bg,var(--pub-accent,var(--accent-link)));width:32px;height:32px;color:var(--pub-button-text,#fff);cursor:pointer;border:none;border-radius:8px;flex:none;font-size:1.1rem;line-height:1}.pub-filter-add-btn:hover{filter:brightness(1.08)}.pub-filter-clear{color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-top:10px;padding:0;font-size:.76rem;font-weight:600}.pub-filter-clear:hover{color:#e05c5c}.pub-pager{justify-content:center;align-items:center;gap:14px;margin-top:18px;display:flex}.pub-pager-btn{background:var(--bg-pub-card);border:1px solid var(--border-dark);color:var(--text-primary);cursor:pointer;border-radius:8px;padding:6px 16px;font-size:.82rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.pub-pager-btn:hover:not(:disabled){background:var(--pub-button-bg,var(--pub-accent,var(--accent-link)));border-color:var(--pub-button-bg,var(--pub-accent,var(--accent-link)));color:var(--pub-button-text,#fff)}.pub-pager-btn:disabled{opacity:.4;cursor:default}.pub-pager-info{color:var(--text-muted);font-size:.8rem;font-weight:600}.pub-season-tabs{border-bottom:2px solid var(--border-dark);gap:0;margin-bottom:28px;display:flex}.pub-team-page{width:100%}.pub-team-logo{object-fit:contain;flex-shrink:0;width:72px;height:72px}.pub-team-logo-placeholder{color:#fff;letter-spacing:.05em;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;font-size:1rem;font-weight:800;display:flex}.pub-team-name{letter-spacing:-.5px;margin:0;font-size:1.7rem;font-weight:800}.pub-team-grid{grid-template-columns:1.5fr 1fr;gap:20px;display:grid}@media (width<=680px){.pub-team-grid{grid-template-columns:1fr}}.pub-team-card{background:var(--bg-pub-card);border:1px solid var(--border-dark);border-radius:12px;min-width:0;padding:20px}.tsb-section{margin-bottom:20px}.tsb-season-tabs{flex-wrap:wrap;gap:6px;display:flex}.tsb-season-btn{background:var(--bg-pub-card);color:var(--text-faint);cursor:pointer;border:1px solid #1e2640;border-radius:16px;padding:4px 12px;font-size:.78rem;font-weight:600;transition:all .15s}.tsb-season-btn.active,.tsb-season-btn:hover{background:var(--pub-button-bg,var(--accent-link));border-color:var(--pub-button-bg,var(--accent-link));color:var(--pub-button-text,#fff)}.tsb-grid{flex-direction:column;gap:10px;margin-top:4px;display:flex}.tsb-row{grid-template-columns:160px 52px 1fr 52px;align-items:center;gap:10px;display:grid}.tsb-label{color:var(--text-muted);white-space:nowrap;font-size:.78rem;font-weight:600}.tsb-val{color:var(--text-primary);text-align:right;font-size:.85rem;font-weight:700}.tsb-track{background:var(--border-dark);border-radius:4px;height:8px;overflow:hidden}.tsb-fill{border-radius:4px;height:100%;transition:width .4s}.tsb-rank{color:var(--text-primary);text-align:right;white-space:nowrap;font-size:.75rem;font-weight:700}.tsb-rank-total{color:var(--text-faint);font-weight:500}@media (width<=600px){.tsb-row{grid-template-columns:120px 44px 1fr 44px;gap:6px}.tsb-label{font-size:.72rem}}.pub-player-page{width:100%}.pub-player-hero{background:var(--bg-pub-card);border:1px solid var(--border-dark);border-radius:14px;margin-bottom:20px;padding:26px 26px 20px;position:relative;overflow:hidden}.pub-player-hero-watermark{color:var(--team-color,var(--accent-link));opacity:.08;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:11rem;font-weight:900;line-height:1;position:absolute;top:50%;right:-10px;transform:translateY(-50%)}.pub-player-hero-top{align-items:center;gap:18px;display:flex;position:relative}.pub-player-jersey-badge{background:var(--bg-inset);border:2px solid var(--border-dark);color:#fff;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:1.5rem;font-weight:800;display:flex;box-shadow:0 4px 14px #00000040}.pub-player-avatar{object-fit:cover;border:3px solid #ffffff40;border-radius:50%;flex-shrink:0;width:72px;height:72px;box-shadow:0 2px 8px #0000004d}.pub-player-name{letter-spacing:-.5px;margin:0 0 6px;font-size:1.9rem;font-weight:800}.pub-player-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pub-player-team{color:var(--pub-button-bg,var(--pub-accent,var(--accent-link)));align-items:center;gap:6px;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.pub-player-team:hover{text-decoration:underline}.pub-player-team-logo{object-fit:contain;flex-shrink:0;width:20px;height:20px}.pub-player-pos-chip{color:var(--text-muted);background:var(--bg-inset);border:1px solid var(--border-dark);letter-spacing:.4px;border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:700}.pub-player-rank-chip{letter-spacing:.4px;border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:800}.pub-hero-stats{flex-wrap:wrap;gap:28px;margin-top:22px;display:flex;position:relative}.pub-hero-stat{text-align:left}.pub-hero-stat-val{color:var(--text-primary);font-size:2rem;font-weight:800;line-height:1.1}.pub-hero-stat-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.9px;margin-top:3px;font-size:.66rem;font-weight:700}.pub-hero-statline{flex-wrap:wrap;gap:6px 18px;margin-top:18px;padding-top:14px;display:flex;position:relative}.pub-hero-statline:before{content:"";background:linear-gradient(to right, var(--team-secondary,var(--border-dark)) 0%, var(--team-secondary,var(--border-dark)) 42%, transparent 70%);opacity:.6;pointer-events:none;height:1px;position:absolute;top:0;left:0;right:0}.pub-statline-item{align-items:baseline;gap:6px;display:inline-flex}.pub-statline-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.6px;font-size:.66rem;font-weight:700}.pub-statline-val{color:var(--text-primary);font-size:.92rem;font-weight:700}.pub-player-seasons{background:var(--bg-pub-card);border:1px solid var(--border-dark);border-left:3px solid var(--pub-button-bg,var(--pub-accent,var(--accent-link)));border-radius:12px;margin-bottom:20px;padding:20px}.pub-table-total-row td{border-top:2px solid var(--border-dark);font-weight:700}.pub-gamelog-controls{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.pub-form-row-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.6px;align-items:center;gap:6px;font-size:.66rem;font-weight:700;display:inline-flex}.pub-form-count-select{padding:2px 6px;font-size:.74rem}.pub-table-pergame-row td{color:var(--text-muted);font-size:.78rem;font-style:italic}.pub-info-list{flex-direction:column;gap:0;margin:14px 0 0;display:flex}.pub-info-row{border-bottom:1px solid var(--border-dark);align-items:baseline;gap:16px;padding:10px 4px;display:flex}.pub-info-row:last-child{border-bottom:none}.pub-info-label{text-transform:uppercase;letter-spacing:.7px;width:110px;color:var(--text-muted);flex-shrink:0;font-size:.68rem;font-weight:700}.pub-info-val{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:600}.pub-row-click{cursor:pointer}.pub-row-click:hover td{background:var(--bg-inset)}.pub-player-hero-watermark--text{letter-spacing:-4px;font-size:7rem}.pub-player-hero-watermark--logo{object-fit:contain;opacity:.09;filter:saturate(.8);width:230px;height:230px}.pub-page-tabs{border-bottom:1px solid var(--border-dark);gap:2px;margin-bottom:20px;display:flex;overflow-x:auto}.pub-page-tab{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 16px;font-size:.88rem;font-weight:600;transition:color .15s,border-color .15s}.pub-page-tab:hover{color:var(--text-primary)}.pub-page-tab--active{color:var(--text-primary);border-bottom-color:var(--pub-button-bg,var(--accent-link))}.pub-result-badge--win{color:#4ade80;background:#4ade8024}.pub-result-badge--loss{color:#e05c5c;background:#e05c5c24}.pub-result-badge--otl{color:#f5b50a;background:#f5b50a24}.pub-recent-form-block{margin-bottom:22px}.ar-tag-chips{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.ar-tag-chip{background:var(--bg-inset);border:1px solid var(--border-mid);color:var(--text-primary);border-radius:999px;align-items:center;gap:5px;padding:3px 6px 3px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.ar-tag-chip-x{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 3px;font-size:.95rem;line-height:1}.ar-tag-chip-x:hover{color:#e05c5c}.pub-chart-block{margin-bottom:18px}.pub-chart-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.pub-chart-title{color:var(--text-muted);font-size:.78rem;font-weight:600}.pub-chart-wrap{background:var(--bg-inset);border:1px solid var(--border-dark);border-radius:10px;padding:12px 8px 4px}.pub-section-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.pub-section-header-row .pub-card-title{margin-bottom:0}.pub-season-type-toggle{border:1px solid var(--border-dark);border-radius:8px;gap:0;display:flex;overflow:hidden}.pub-toggle-btn{background:var(--bg-inset);color:var(--text-muted);cursor:pointer;letter-spacing:.3px;border:none;padding:5px 14px;font-size:.78rem;font-weight:600;transition:background .15s,color .15s}.pub-toggle-btn:first-child{border-right:1px solid var(--border-dark)}.pub-toggle-btn--active{background:var(--pub-button-bg,var(--pub-accent,var(--accent-link)));color:var(--pub-button-text,#fff)}.pub-toggle-btn:hover:not(.pub-toggle-btn--active){color:var(--text-primary);background:#808aa029}.pub-season-select{background:var(--pub-dropdown-bg,var(--bg-inset));color:var(--pub-dropdown-text,var(--text-primary));border:1px solid var(--pub-button-bg,var(--border-dark));cursor:pointer;border-radius:8px;padding:5px 10px;font-size:.8rem}.pub-last5-opp-link{color:var(--text-primary);font-weight:600;text-decoration:none}.pub-last5-opp-link:hover{color:var(--accent-light);text-decoration:underline}.pub-plus-minus--pos{color:#4ade80;font-weight:700}.pub-plus-minus--neg{color:#f87171;font-weight:700}.pub-perf-grid{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.pub-perf-box{background:var(--bg-inset);border:1px solid var(--border-dark);text-align:center;border-radius:10px;flex-direction:column;flex:84px;min-width:84px;padding:13px 16px 7px;display:flex;position:relative;overflow:hidden}.pub-perf-val{color:var(--text-primary);font-size:1.35rem;font-weight:800;line-height:1.1}.pub-perf-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.8px;margin-top:3px;font-size:.6rem;font-weight:700}.pub-perf-rank{color:var(--accent-light);margin-top:auto;padding-top:14px;font-size:.74rem;font-weight:800}.pub-perf-rank-total{color:var(--text-faint);font-size:.86em;font-weight:500}.pub-perf-rank--gold{color:#f5b50a}.pub-perf-rank--silver{color:#b8c2d8}.pub-perf-rank--bronze{color:#d08a4e}.pub-perf-bar{background:0 0;height:3px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.pub-perf-bar-fill{opacity:.9;height:100%}.pub-season-stat-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;display:grid}.pub-season-stat-grid .pub-perf-box{flex:none;min-width:0}.pub-gamelog-opp{align-items:center;gap:8px;display:inline-flex}.pub-gamelog-opp-name{white-space:nowrap}.pub-gamelog-opp-logo{object-fit:contain;flex-shrink:0;width:18px;height:18px}.pub-gamelog-opp-logo--placeholder{background:var(--bg-inset2);border-radius:4px}.pub-result-cell{align-items:center;gap:8px;display:inline-flex}.pub-result-badge{letter-spacing:.4px;border-radius:6px;min-width:30px;padding:2px 7px;font-size:.72rem;font-weight:800;display:inline-block}.pub-result-score{color:var(--text-muted);font-size:.8rem;font-weight:700}.pub-result-cell--w .pub-result-badge{color:#4ade80;background:#4ade8029}.pub-result-cell--l .pub-result-badge{color:#f87171;background:#f8717129}.pub-result-cell--otl .pub-result-badge{color:#f5b50a;background:#f5b50a29}.pub-result-cell--t .pub-result-badge{color:#94a3b8;background:#94a3b829}.season-live-dot{vertical-align:middle;background:#4ade80;border-radius:50%;width:7px;height:7px;margin-left:6px;display:inline-block;box-shadow:0 0 5px #4ade80}.season-type-icon{margin-right:4px;font-size:.85em}.pub-site-link{color:var(--text-dim);margin-left:8px;font-size:.75rem;text-decoration:none;transition:color .15s}.pub-site-link:hover{color:var(--accent-link)}.pub-bracket-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.pub-bracket-title{margin:0;font-size:1.2rem;font-weight:700}.pub-bracket-champion{color:#f59e0b;font-size:.95rem}.pub-bracket-scroll{padding-bottom:16px;overflow-x:auto}.bracket-grid{align-items:flex-start;gap:24px;min-width:min-content;display:flex}.bracket-round{flex-direction:column;min-width:180px;display:flex}.bracket-round-name{text-transform:uppercase;letter-spacing:.8px;color:var(--text-faint);text-align:center;border-bottom:1px solid var(--border-mid);margin-bottom:12px;padding-bottom:10px;font-size:.72rem}.bracket-round-matchups{flex-direction:column;flex:1;justify-content:space-around;gap:16px;display:flex}.bracket-matchup{background:var(--bg-inset2);border:1px solid var(--bg-active);border-radius:8px;min-width:180px;overflow:hidden}.bracket-matchup--done{border-color:var(--border-active)}.bracket-matchup--champion{border-color:#f59e0b;box-shadow:0 0 16px #f59e0b33}.bracket-champion-label{color:#f59e0b;text-align:center;letter-spacing:.5px;background:#2a1f0a;padding:3px 0;font-size:.72rem}.bracket-team{border-bottom:1px solid var(--bg-darkest);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.bracket-team--winner{background:#0d1f0d}.bracket-team--loser{opacity:.45}.bracket-team-name{color:var(--text-near);font-size:.85rem}.bracket-team-wins{color:var(--text-near);text-align:right;min-width:16px;font-size:1rem;font-weight:700}.bracket-series-label{color:var(--text-faint);text-align:center;padding:4px;font-size:.68rem}.bracket-tbd{color:var(--text-faint);font-size:.8rem;font-style:normal}.bracket-create-panel{max-width:520px}.bracket-create-panel h2{margin:0 0 8px}.bracket-create-hint{color:var(--text-dim);margin-bottom:24px;font-size:.88rem}.form-row{margin-bottom:18px}.form-row label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px;font-size:.82rem;display:block}.bracket-size-pills{flex-wrap:wrap;gap:8px;display:flex}.bracket-size-pill{background:var(--bg-inset2);border:1px solid var(--bg-active);color:var(--text-dim);cursor:pointer;border-radius:20px;padding:7px 18px;font-size:.85rem;transition:all .15s}.bracket-size-pill:hover,.bracket-size-pill.active{background:var(--accent-link);border-color:var(--accent-link);color:#fff}.bracket-builder-header{border-bottom:1px solid var(--bg-active);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:24px;padding-bottom:16px;display:flex}.bracket-builder-title{margin:0 0 4px;font-size:1.2rem;font-weight:700}.bracket-builder-meta{color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:8px;font-size:.82rem;display:flex}.bracket-builder-actions{gap:8px;display:flex}.bracket-builder-grid{align-items:flex-start;gap:20px;padding-bottom:16px;display:flex;overflow-x:auto}.bracket-builder-round{flex-direction:column;gap:12px;min-width:220px;display:flex}.bracket-editor-card{background:var(--bg-inset2);border:1px solid var(--bg-active);border-radius:8px;flex-direction:column;gap:6px;padding:10px;display:flex}.bracket-editor-card--done{border-color:var(--border-active)}.bracket-editor-team-row{align-items:center;gap:6px;display:flex}.bracket-editor-vs{text-align:center;color:var(--text-faint);padding:2px 0;font-size:.7rem}.bracket-editor-winner{color:#4ade80;padding:2px 4px;font-size:.75rem}.input--wins{text-align:center;flex-shrink:0;width:44px!important}.input--sm{flex:1;font-size:.82rem}.badge--green{color:#4ade80;background:#0d1f0d;border:1px solid #1a3a1a;border-radius:4px;padding:2px 8px;font-size:.75rem}.badge--gray{color:var(--text-dim);background:#1a1a1a;border:1px solid #2a2a2a;border-radius:4px;padding:2px 8px;font-size:.75rem}.btn-danger{color:#f87171;background:#3a1010;border:1px solid #5a1a1a}.btn-danger:hover{background:#5a1a1a}.game-detail{max-width:1200px;padding:0 8px}.game-detail-header{border-bottom:1px solid var(--bg-active);align-items:center;gap:16px;margin-bottom:0;padding:16px 0 20px;display:flex;position:relative}.game-detail-header:before{content:"";background:var(--home-color,#5c7cfa);border-radius:0 2px 2px 0;width:4px;position:absolute;top:0;bottom:0;left:-16px}.game-detail-scoreboard{flex:1;align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.game-detail-sb-team{align-items:center;gap:8px;min-width:0;display:flex}.game-detail-sb-team--away{flex-direction:row}.game-detail-sb-logo{flex-shrink:0;align-items:center;width:32px;height:32px;display:flex}.game-detail-sb-logo-img{object-fit:contain;width:32px;height:32px}.game-detail-sb-logo-badge{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:.75rem;font-weight:800;display:flex}.game-detail-sb-name{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;max-width:140px;font-size:.9rem;font-weight:600;overflow:hidden}.game-detail-sb-score{color:var(--text-primary);flex-shrink:0;font-size:1.4rem;font-weight:900}.game-detail-sb-sep{color:var(--text-faint2);flex-shrink:0;padding:0 4px;font-size:1rem}.game-score-team-inner{align-items:center;gap:6px;display:flex}.game-score-team-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.game-tabs{border-bottom:1px solid var(--bg-active);gap:4px;margin-top:4px;margin-bottom:28px;display:flex}.game-tab{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 20px;font-size:.9rem;transition:color .15s}.game-tab:hover{color:var(--text-secondary)}.game-tab.active{color:var(--accent-link);border-bottom-color:var(--accent-link)}.game-cell{background:var(--bg-inset2);border:1px solid var(--bg-active);color:var(--text-near);border-radius:4px;width:100%;padding:5px 8px;font-size:.85rem}.game-cell:focus{border-color:var(--accent-link);outline:none}.game-stat-table{border-collapse:collapse;width:100%;font-size:.85rem}.game-stat-table th{color:var(--text-dim);text-transform:uppercase;border-bottom:1px solid var(--bg-active);text-align:left;padding:8px;font-size:.72rem}.game-stat-table td{border-bottom:1px solid var(--bg-inset);padding:4px 6px}.game-score-table{border-collapse:collapse;margin:20px 0}.game-score-table th,.game-score-table td{border:1px solid var(--bg-active);text-align:center;padding:10px 14px}.game-score-total{font-size:1.2rem;font-weight:700}.game-roster-block{margin-bottom:32px}.game-roster-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.game-roster-header h3{margin:0;font-size:.95rem}.game-table-scroll{overflow-x:auto}.game-info-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin-bottom:32px;display:grid}.game-info-field{color:var(--text-dim);flex-direction:column;gap:4px;font-size:.78rem;display:flex}.game-officials{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.game-save-bar{background:var(--bg-inset);border-top:1px solid var(--bg-active);justify-content:flex-end;gap:10px;margin-top:32px;padding:14px 0;display:flex;position:sticky;bottom:0}.game-save-error{color:#f87171;font-size:.85rem}.game-detail-actions{align-items:center;gap:8px;display:flex}.game-overview .game-score-block{overflow-x:auto}.pub-back-link{color:var(--text-dim);margin-bottom:18px;font-size:.82rem;text-decoration:none;display:inline-block}.pub-back-link:hover{color:var(--text-secondary)}.pub-game-detail{max-width:900px;margin:0 auto;padding:44px 16px 28px}.pub-game-detail-header{margin-bottom:20px}.pub-game-detail-meta{color:var(--text-dim);flex-wrap:wrap;gap:8px;margin-bottom:16px;font-size:.8rem;display:flex}.pub-game-scoreboard{border:1px solid var(--border-dark);background:var(--bg-surface2);border-radius:14px;align-items:stretch;margin-bottom:28px;display:flex;position:relative;overflow:hidden}.pub-game-scoreboard:before{content:"";background:var(--home-color,#5c7cfa);width:5px;position:absolute;top:0;bottom:0;left:0}.pub-game-scoreboard:after{content:"";background:var(--away-color,#5c7cfa);width:5px;position:absolute;top:0;bottom:0;right:0}.pub-gsb-side{flex:1;align-items:center;gap:16px;padding:22px 24px;display:flex}.pub-gsb-side--away{flex-direction:row-reverse}.pub-gsb-side--win .pub-gsb-score{color:var(--text-primary)}.pub-gsb-logo-wrap{flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.pub-gsb-logo-img{object-fit:contain;width:60px;height:60px}.pub-gsb-logo-badge{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.4rem;font-weight:800;display:flex}.pub-gsb-team-info{flex:1;min-width:0}.pub-gsb-team-info--away{text-align:right}.pub-gsb-team-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-weight:700;overflow:hidden}.pub-gsb-label{text-transform:uppercase;letter-spacing:1px;color:var(--text-faint2);margin-top:2px;font-size:.6rem;font-weight:700}.pub-gsb-score{color:var(--text-dim2);flex-shrink:0;font-size:3rem;font-weight:900;line-height:1}.pub-gsb-center{border-left:1px solid var(--border-dark);border-right:1px solid var(--border-dark);flex-direction:column;justify-content:center;align-items:center;gap:10px;min-width:170px;padding:16px 20px;display:flex}.pub-gsb-status{letter-spacing:.12em;color:var(--pub-accent,var(--accent-link));text-transform:uppercase;font-size:.68rem;font-weight:700}.pub-gsb-meta{color:var(--text-faint2);text-align:center;font-size:.68rem}.pub-game-period-table{border-collapse:collapse;font-size:.8rem}.pub-game-period-table th,.pub-game-period-table td{border:1px solid var(--border-dark);text-align:center;padding:5px 10px}.pub-game-period-table th{color:var(--text-dim);font-size:.68rem}.pub-game-period-table .pub-gpt-team{text-align:left;letter-spacing:.04em;color:var(--text-dim);font-size:.68rem;font-weight:700}.pub-game-period-table td.pub-gpt-total{color:var(--text-primary);background:var(--bg-inset);font-weight:800}.pub-game-period-table th.pub-gpt-total{background:var(--bg-inset)}.pub-sog-table{width:100%;max-width:420px}.pub-game-section{margin-bottom:32px}.pub-ev-group{margin-bottom:18px}.pub-ev-group-title{color:var(--text-dim);margin:14px 0 6px;font-size:.78rem;font-weight:600}.pub-ev-row{border-bottom:1px solid var(--border-dark);align-items:center;gap:12px;padding:10px 2px;display:flex}.pub-ev-group .pub-ev-row:last-child{border-bottom:none}.pub-ev-logo{object-fit:contain;flex-shrink:0;width:34px;height:34px}.pub-ev-badge{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.95rem;font-weight:800;display:inline-flex}.pub-ev-body{flex:1;min-width:0}.pub-ev-title{color:var(--text-primary);font-size:.92rem;font-weight:700}.pub-ev-jersey{color:var(--text-muted);font-size:.78rem;font-weight:500}.pub-ev-sub{color:var(--text-dim);margin-top:1px;font-size:.82rem}.pub-ev-sub strong{color:var(--text-secondary)}.pub-ev-time{color:var(--text-secondary);flex-shrink:0;font-size:.92rem;font-weight:700}.pub-ts-header{border-bottom:1px solid var(--bg-active);justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:8px;display:flex}.pub-ts-title{color:var(--text-secondary);margin:0;font-size:.92rem;font-weight:700}.pub-ts-row{margin-bottom:16px}.pub-ts-vals{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;display:flex}.pub-ts-val{color:var(--text-primary);min-width:48px;font-size:.95rem;font-weight:700}.pub-ts-val--away{text-align:right}.pub-ts-label{color:var(--text-dim);text-align:center;font-size:.82rem;font-weight:600}.pub-ts-bars{gap:6px;display:flex}.pub-ts-bar{border-radius:2px;min-width:4px;height:4px}.pub-game-section-title{color:var(--text-secondary);border-bottom:1px solid var(--bg-active);border-left:3px solid var(--accent-link);align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;padding-left:10px;font-size:.92rem;font-weight:700;display:flex}.pub-section-team-logo{object-fit:contain;flex-shrink:0;width:20px;height:20px}.pub-gd-tabs{border-bottom:2px solid var(--border-dark);gap:0;margin-bottom:24px;display:flex}.pub-gd-tab{color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:10px 22px;font-size:.9rem;font-weight:600;transition:color .15s,border-color .15s}.pub-gd-tab:hover{color:var(--text-secondary)}.pub-gd-tab.active{color:var(--pub-accent,var(--accent-link));border-bottom-color:var(--pub-accent,var(--accent-link))}.pub-gd-panel{padding-top:4px}.pub-gd-team-tabs{gap:8px;margin-bottom:20px;display:flex}.pub-gd-team-tab{background:var(--bg-pub-card);border:2px solid var(--border-dark);color:var(--text-dim);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 18px;font-size:.88rem;font-weight:600;transition:all .15s;display:flex}.pub-gd-team-tab:hover{border-color:var(--border-subtle);color:var(--text-secondary)}.pub-gd-team-tab.active{border-color:var(--tab-color,var(--accent-link));color:var(--text-primary);background:color-mix(in srgb, var(--tab-color,var(--accent-link)) 12%, transparent)}.pub-gd-team-tab-logo{object-fit:contain;width:22px;height:22px}.pub-gd-table-wrap{overflow-x:auto}.pub-gd-team-dot{vertical-align:middle;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-right:6px;display:inline-block}.pub-gd-jersey{color:var(--text-faint);margin-right:4px;font-size:.75rem}.pub-gd-scorer{white-space:nowrap}.pub-gd-event-type{letter-spacing:.05em;background:var(--bg-active);color:var(--text-dim);border-radius:3px;padding:1px 5px;font-size:.68rem;font-weight:700;display:inline-block}@media (width<=600px){.pub-gsb-logo-wrap,.pub-gsb-logo-img{width:36px;height:36px}.pub-gsb-logo-badge{width:32px;height:32px;font-size:.9rem}.pub-gsb-score{font-size:2.2rem}.pub-gsb-team-name{font-size:.82rem}.pub-gsb-side{gap:8px;padding:14px 12px}.pub-gsb-center{min-width:120px;padding:12px 10px}}.badge-final{color:#4ade80;background:#0d2010;border:1px solid #1a3a1a;border-radius:4px;padding:2px 8px;font-size:.72rem}.badge-draft{color:var(--text-dim);background:#1a1a2e;border:1px solid #2a2a3a;border-radius:4px;padding:2px 8px;font-size:.72rem}.logo-upload-btn{border:1px dashed var(--border);cursor:pointer;background:var(--bg-inset);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:border-color .15s;display:inline-flex;overflow:hidden}.logo-upload-btn:hover{border-color:var(--accent)}.logo-upload-preview{object-fit:cover;border-radius:8px;width:100%;height:100%}.logo-upload-placeholder{opacity:.5;font-size:1rem}.roster-tabs{border-bottom:1px solid var(--bg-active);gap:4px;margin-bottom:10px;display:flex}.roster-tab{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:5px 14px;font-size:.8rem;transition:color .15s,border-color .15s}.roster-tab.active{color:var(--accent-text);border-bottom-color:var(--accent)}.roster-tab:hover{color:var(--text-secondary)}.pts-config-panel{background:var(--bg-surface2);border:1px solid var(--bg-active);border-radius:8px;margin:10px 0;padding:14px 16px}.pts-config-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);margin-bottom:10px;font-size:.75rem}.pts-config-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.pts-config-field{color:var(--text-muted);align-items:center;gap:8px;font-size:.82rem;display:flex}.pts-config-field span{white-space:nowrap}.roster-page-teams{flex-direction:column;gap:16px;display:flex}.roster-team-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}.roster-team-header{background:var(--bg-surface2);border-bottom:1px solid var(--bg-active);align-items:center;gap:12px;padding:14px 16px;display:flex}.roster-team-info{flex:1}.roster-team-name{color:var(--text-near);font-size:.95rem;font-weight:700}.roster-team-short{color:var(--text-dim);margin-top:1px;font-size:.75rem}.roster-team-counts{flex-shrink:0;gap:8px;display:flex}.roster-count-badge{background:var(--bg-active);color:var(--text-muted);border:1px solid var(--border);border-radius:4px;padding:2px 8px;font-size:.72rem}.roster-count-badge--rostered{color:#4ade80;background:#0d2010;border-color:#1a3a1a}.roster-collapse-icon{color:var(--text-faint);flex-shrink:0;margin-left:2px;font-size:.9rem}.roster-tab-count{background:var(--border-mid);min-width:18px;height:18px;color:var(--text-dim);border-radius:9px;justify-content:center;align-items:center;margin-left:6px;padding:0 5px;font-size:.68rem;font-weight:700;display:inline-flex}.roster-tab.active .roster-tab-count{background:var(--accent-link);color:#fff}.roster-tab-body{padding:12px 16px 16px}.roster-empty{opacity:.5;margin:8px 0;font-size:.85rem}.season-team-list{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.season-team-chip{background:var(--bg-active);border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:.82rem;display:flex}.season-team-chip-logo{object-fit:cover;border-radius:3px;width:18px;height:18px}.roster-already-badge{color:#4ade80;opacity:.8;font-size:.72rem;font-weight:600}.roster-inline-name-input{color:inherit;background:#ffffff12;border:1px solid #fff3;border-radius:4px;width:130px;padding:2px 6px;font-size:.78rem}.config-page{max-width:740px}.config-section{margin-bottom:32px}.season-status-toggle{align-items:center;display:flex}.season-status-btn{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border-radius:20px;padding:3px 10px;font-size:.72rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.season-status-btn:hover{color:#4ade80;border-color:#4ade80}.season-status-btn--live{color:#4ade80;background:#4ade801f;border-color:#4ade80}.season-status-btn:disabled{opacity:.5;cursor:default}.config-section-title{text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim);margin:0 0 10px;font-size:.75rem;font-weight:700}.config-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;padding:16px 20px}.config-saved-badge{color:#4ade80;margin-left:12px;font-size:.78rem}.config-seasons-list{flex-direction:column;gap:12px;display:flex}.config-season-header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.config-season-name{flex:1;font-size:.9rem;font-weight:600}.config-pts-form{flex-direction:column;gap:10px;display:flex}.config-pts-fields{flex-wrap:wrap;gap:12px;display:flex}.config-pts-field{color:var(--text-muted);flex-direction:column;align-items:center;gap:4px;font-size:.75rem;display:flex}.config-toggle-row{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:4px 0;display:flex}.config-toggle-info{flex:1}.config-toggle-label{color:var(--text-secondary);font-size:.9rem;display:block}.config-toggle-desc{color:var(--text-dim);margin-top:2px;font-size:.78rem;display:block}.config-switch{background:var(--border);border:1px solid var(--text-faint);cursor:pointer;border-radius:11px;flex-shrink:0;width:40px;height:22px;transition:background .2s;position:relative}.config-switch--on{background:#2563eb;border-color:#2563eb}.config-switch-thumb{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px}.config-switch--on .config-switch-thumb{transform:translate(18px)}.profile-page{width:100%;max-width:560px;margin:40px auto;padding:0 24px}.profile-avatar-card{flex-direction:column;gap:12px;display:flex}.profile-avatar-wrap{align-items:center;gap:16px;display:flex}.profile-avatar-img{object-fit:cover;border:2px solid var(--border);border-radius:50%;width:72px;height:72px}.profile-avatar-placeholder{background:var(--bg-active);border:2px solid var(--border);width:72px;height:72px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:1.6rem;font-weight:700;display:flex}.profile-avatar-hint{color:var(--text-dim);margin:0;font-size:.78rem}.profile-form{flex-direction:column;gap:14px;display:flex}.profile-field{color:var(--text-muted);flex-direction:column;gap:5px;font-size:.82rem;display:flex}.profile-field input{width:100%}.profile-field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.profile-field-row .profile-field select{width:100%}@media (width<=560px){.profile-field-row{grid-template-columns:1fr}}.profile-divider{border:none;border-top:1px solid var(--bg-active);margin:4px 0}.profile-section-label{color:var(--text-muted);margin:0;font-size:.8rem}.profile-section-label span{opacity:.6}.form-error{color:#f87171;margin:0;font-size:.82rem}.form-success{color:#4ade80;margin:0;font-size:.82rem}.profile-subscription-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.profile-subscription-info{flex-direction:column;gap:4px;min-width:0;display:flex}.profile-subscription-label{color:var(--text-secondary);font-size:.9rem;font-weight:600}.profile-subscription-hint{color:var(--text-dim);margin:0;font-size:.82rem}.profile-subscription-card .btn{flex-shrink:0}.navbar-profile-link{color:inherit;align-items:center;gap:8px;text-decoration:none;display:flex}.navbar-avatar{object-fit:cover;border:1px solid var(--border);border-radius:50%;width:28px;height:28px}.navbar-avatar-initial{background:var(--bg-active);border:1px solid var(--border);width:28px;height:28px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.roster-user-cell{min-width:160px;padding:6px 8px!important}.roster-linked-user{align-items:center;gap:6px;font-size:.82rem;display:inline-flex}.roster-user-avatar{object-fit:cover;border-radius:50%;width:22px;height:22px}.roster-user-initial{background:var(--bg-active);border:1px solid var(--border);width:22px;height:22px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.65rem;font-weight:700;display:inline-flex}.roster-user-search{flex-direction:column;gap:4px;display:flex;position:relative}.roster-user-dropdown{z-index:50;background:var(--border-mid);border:1px solid var(--border);border-radius:8px;min-width:240px;max-height:200px;position:absolute;top:100%;left:0;overflow-y:auto;box-shadow:0 8px 24px #00000080}.roster-user-option{text-align:left;width:100%;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;font-size:.82rem;display:flex}.roster-user-option:hover{background:var(--bg-active)}.roster-user-email{color:var(--text-dim);margin-left:auto;font-size:.72rem}.team-edit-page{max-width:780px}.team-edit-form{flex-direction:column;gap:0;display:flex}.team-edit-identity{grid-template-columns:1fr 1fr;gap:14px;display:grid}.team-edit-identity .profile-field{min-width:0}.team-edit-identity__full{grid-column:1/-1}.team-edit-logo-section{align-items:center;gap:20px;display:flex}.team-edit-logo-preview{border:2px solid var(--border);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:96px;height:96px;display:flex;overflow:hidden}.team-edit-logo-preview img{object-fit:contain;width:100%;height:100%}.team-edit-logo-empty{color:var(--text-dim);font-size:.75rem}.team-edit-logo-link{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:.75rem;text-decoration:underline}.logo-preview-overlay{z-index:1000;background:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.logo-preview-box{background:var(--bg-card);border-radius:12px;justify-content:center;align-items:center;max-width:480px;max-height:480px;padding:24px;display:flex;position:relative}.logo-preview-img{object-fit:contain;border-radius:6px;max-width:400px;max-height:400px}.logo-preview-close{cursor:pointer;color:var(--text-dim);background:0 0;border:none;font-size:1.1rem;line-height:1;position:absolute;top:10px;right:10px}.team-edit-header-logo{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex;overflow:hidden}.team-edit-header-logo img{object-fit:contain;width:100%;height:100%}.team-edit-colors{flex-wrap:wrap;align-items:flex-end;gap:20px;display:flex}.team-edit-color-field{color:var(--text-muted);flex-direction:column;gap:6px;font-size:.8rem;display:flex}.team-edit-color-wrap{align-items:center;gap:8px;display:flex}.team-edit-color-picker{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;width:36px;height:36px;padding:2px}.team-edit-color-preview{flex:1;align-self:flex-end;gap:8px;min-width:140px;padding-bottom:2px;display:flex}.team-edit-staff{flex-direction:column;gap:8px;display:flex}.team-edit-staff-row{align-items:center;gap:8px;display:flex}.team-edit-bio{resize:vertical;width:100%;font-family:inherit;font-size:.88rem;line-height:1.5}.team-edit-save-bar{background:linear-gradient(to top, var(--bg-inset) 80%, transparent);align-items:center;gap:12px;margin-top:8px;padding:12px 0 16px;display:flex;position:sticky;bottom:0}.sidebar-league-logo{object-fit:contain;border-radius:4px;flex-shrink:0;width:22px;height:22px}.league-sidebar-name{align-items:center;gap:8px;display:flex}.sidebar-section-collapsible{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;display:flex}.sidebar-section-count{background:var(--bg-active);min-width:18px;height:16px;color:var(--text-dim);border-radius:8px;justify-content:center;align-items:center;margin-left:5px;padding:0 5px;font-size:.65rem;font-weight:700;display:inline-flex}.sidebar-section-chevron{color:var(--text-dim);margin-left:auto;font-size:.6rem}.sidebar-teams-list{flex-direction:column;gap:1px;margin-bottom:4px;display:flex}.sidebar-team-link{color:var(--text-muted);border-radius:6px;align-items:center;gap:8px;padding:5px 8px;font-size:.82rem;text-decoration:none;transition:background .15s,color .15s;display:flex}.sidebar-team-link:hover,.sidebar-team-link.active{background:var(--bg-active);color:var(--text-near)}.sidebar-team-logo{object-fit:contain;border-radius:3px;flex-shrink:0;width:20px;height:20px}.sidebar-team-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.sidebar-team-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sidebar-team-short{color:var(--text-faint);flex-shrink:0;font-family:monospace;font-size:.68rem}.sidebar-league-links{border-top:1px solid var(--bg-active);flex-direction:column;gap:4px;margin-top:auto;padding-top:12px;display:flex}.sidebar-scan-btn{text-align:center;margin-top:4px}.season-teams-nav{border-left:2px solid var(--bg-active);margin-top:4px;margin-bottom:6px;padding-left:8px}.season-teams-nav-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-faint);align-items:center;gap:6px;padding:4px 8px 2px;font-size:.68rem;font-weight:700;display:flex}.season-teams-nav .sidebar-team-link{padding:4px 8px;font-size:.79rem}.copy-teams-panel{z-index:40;background:var(--border-mid);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:10px;min-width:280px;padding:14px 16px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #00000080}.copy-teams-panel--inline{box-shadow:none;border-color:var(--border);max-width:480px;margin-top:8px;position:static}.copy-teams-title{color:var(--text-secondary);font-size:.82rem;font-weight:600}.copy-teams-hint{color:var(--text-dim);margin:0;font-size:.75rem}.teams-page{max-width:820px}.teams-page-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.teams-add-form{flex:1;align-items:center;gap:8px;min-width:280px;display:flex}.teams-list{flex-direction:column;gap:10px;display:flex}.team-row-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;align-items:center;gap:14px;padding:12px 16px;transition:border-color .15s;display:flex}.team-row-card:hover{border-color:var(--text-faint)}.team-row-logo{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden}.team-row-logo img{object-fit:contain;width:100%;height:100%}.team-row-initial{color:#ffffff80;font-size:1.2rem;font-weight:700}.team-row-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.team-row-name{color:var(--text-near);font-size:.95rem;font-weight:700}.team-row-short{color:var(--text-dim);font-family:monospace;font-size:.75rem}.team-row-meta{color:var(--text-dim);font-size:.75rem}.team-row-colors{flex-shrink:0;align-items:center;gap:5px;display:flex}.team-row-color-dot{border:1px solid #ffffff1a;border-radius:50%;width:14px;height:14px}.team-row-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.season-teams-nav-toggle{color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;width:100%}.sidebar-team-link--manage{opacity:.6;font-style:italic;font-size:.77rem!important}.sidebar-team-link--manage:hover{opacity:1}.team-row-detected-badge{color:var(--accent-dim);letter-spacing:.03em;text-transform:uppercase;font-size:.72rem}.pub-season-header{align-items:center;gap:10px;margin-bottom:4px;display:flex}.pub-season-title{color:var(--text-near);flex-wrap:wrap;align-items:baseline;gap:10px;margin:0;font-size:1.25rem;font-weight:700;display:flex}.pub-season-page-label{color:var(--text-muted);letter-spacing:.3px;font-size:.82rem;font-weight:600}.pub-season-status-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:20px;align-items:center;padding:2px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.pub-season-status-badge--live{color:#34c759;background:#34c7592e;border:1px solid #34c75959}.pub-season-status-badge--archived{color:var(--text-muted);background:#7882a026;border:1px solid #7882a040}.pub-season-badge--live{color:#34c759;letter-spacing:.04em;text-transform:uppercase;background:#34c7592e;border:1px solid #34c7594d;border-radius:10px;padding:1px 7px;font-size:.68rem;font-weight:700}.pub-season-badge--archived{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;background:#7882a026;border:1px solid #7882a033;border-radius:10px;padding:1px 7px;font-size:.68rem;font-weight:700}.game-scan-panel{padding:16px 0}.game-scan-label{color:var(--text-muted);margin-bottom:8px;font-size:.85rem}.game-scan-link{color:var(--accent-dim);margin-bottom:12px;font-size:.82rem;display:inline-block}.game-scan-img-wrap{border:1px solid var(--border);border-radius:8px;max-width:100%;overflow:auto}.game-scan-img{max-width:100%;display:block}.scan-preview-details{margin:12px 0}.scan-preview-summary{cursor:pointer;color:var(--text-muted);-webkit-user-select:none;user-select:none;padding:4px 0;font-size:.85rem}.scan-preview-summary:hover{color:var(--text-secondary)}.scan-preview-img-wrap{border:1px solid var(--border);border-radius:8px;max-height:500px;margin-top:10px;overflow:auto}.scan-preview-img{max-width:100%;display:block}.game-scan-thumb-row{border-top:1px solid var(--bg-active);align-items:flex-start;gap:10px;margin-top:20px;padding-top:16px;display:flex}.game-scan-thumb-label{color:var(--text-muted);white-space:nowrap;padding-top:4px;font-size:.82rem}.game-scan-thumb{object-fit:contain;border:1px solid var(--border);cursor:pointer;border-radius:6px;max-width:300px;max-height:200px;transition:opacity .15s}.game-scan-thumb:hover{opacity:.85}.edit-section{overflow-x:auto}.editable-table{table-layout:auto;white-space:nowrap}.editable-table .edit-cell{box-sizing:border-box;width:100%}.scan-mode-tabs{background:var(--bg-row-hover);border:1px solid var(--border);border-radius:8px;gap:2px;padding:3px;display:flex}.scan-mode-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 16px;font-size:.88rem;font-weight:600;transition:background .15s,color .15s}.scan-mode-tab:hover{color:var(--text-secondary)}.scan-mode-tab.active{background:var(--bg-active);color:var(--text-near)}.manage-section-title{text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim);margin:0 0 14px;font-size:.78rem;font-weight:700}.config-field-row{align-items:center;gap:12px;display:flex}.config-field-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);white-space:nowrap;min-width:80px;font-size:.75rem;font-weight:600}.subnav-team-list{flex-direction:column;gap:1px;margin:2px 0;padding-left:8px;display:flex}.subnav-team-item{color:var(--text-dim2);border-radius:5px;align-items:center;gap:7px;padding:4px 8px;font-size:.8rem;text-decoration:none;transition:background .15s,color .15s;display:flex}.subnav-team-item:hover,.subnav-team-item.active{background:var(--bg-active);color:var(--text-secondary)}.subnav-team-logo{object-fit:contain;border-radius:3px;flex-shrink:0;width:18px;height:18px}.subnav-team-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.subnav-team-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subnav-teams-toggle{cursor:pointer;color:var(--text-faint);text-align:left;background:0 0;border:none;align-items:center;gap:6px;width:100%;padding:2px 8px 2px 24px;font-size:.78rem;transition:color .15s;display:flex}.subnav-teams-toggle:hover{color:var(--text-dim2)}.season-subnav-toggle{cursor:pointer;width:100%;color:var(--text-dim);text-align:left;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;padding:5px 10px;font-family:inherit;font-size:.85rem;text-decoration:none;transition:background .15s,color .15s;display:flex}.season-subnav-toggle:hover{background:var(--bg-active);color:var(--text-near)}.subnav-teams-chevron{color:var(--text-faint);font-size:.7rem}.scan-map-step{flex-direction:column;gap:20px;display:flex}.scan-map-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.scan-map-header h2{margin:0 0 4px}.scan-map-header p{color:var(--text-dim);margin:0;font-size:.85rem}.scan-map-card{padding:20px 24px}.scan-map-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin-bottom:14px;font-size:.7rem;font-weight:700}.scan-map-teams{grid-template-columns:1fr 1fr;gap:20px;display:grid}.scan-map-team-col{flex-direction:column;display:flex}.scan-map-team-label{text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);margin-bottom:4px;font-size:.7rem}.scan-map-team-detected{color:var(--text-near);font-size:.9rem;font-style:italic}.scan-map-players{grid-template-columns:1fr 1fr;gap:24px;display:grid}.scan-map-player-col{flex-direction:column;gap:6px;display:flex}.scan-map-player-col-header{color:var(--text-secondary);border-bottom:1px solid var(--bg-active);margin-bottom:4px;padding-bottom:8px;font-size:.8rem;font-weight:600}.map-player-row{border-bottom:1px solid var(--bg-surface2);flex-wrap:wrap;align-items:center;gap:8px;padding:5px 0;display:flex}.map-player-row:last-child{border-bottom:none}.map-player-detected{align-items:center;gap:6px;min-width:120px;display:flex}.map-jersey{color:var(--text-dim);min-width:28px;font-size:.75rem;font-weight:700}.map-name{color:var(--text-secondary);font-size:.85rem}.map-arrow{color:var(--text-faint);flex-shrink:0;font-size:.85rem}.map-player-select{flex:1;min-width:140px;padding:3px 6px;font-size:.8rem}.map-name-diff{color:var(--accent-dim);white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:.72rem;overflow:hidden}.map-badge{letter-spacing:.05em;text-transform:uppercase;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.65rem;font-weight:700}.map-badge--green{color:#4ade80;background:#14532d}.map-badge--yellow{color:#fbbf24;background:#451a03}.map-badge--blue{color:#93c5fd;background:#1e3a8a}.map-badge--gray{background:var(--bg-active);color:var(--text-dim)}.scan-map-actions{justify-content:flex-end;gap:10px;padding:4px 0 8px;display:flex}@media (width<=700px){.scan-map-teams,.scan-map-players{grid-template-columns:1fr}}.scan-accuracy-badge{border-radius:8px;align-items:center;gap:8px;padding:6px 12px;font-weight:700;display:flex}.scan-accuracy-pct{font-size:1.1rem}.scan-accuracy-label{text-transform:uppercase;letter-spacing:.06em;opacity:.85;font-size:.72rem}.learned-stats-row{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.learned-stat{background:var(--bg-surface2);text-align:center;border-radius:8px;flex-direction:column;align-items:center;padding:12px 8px;display:flex}.learned-stat-val{color:var(--text-near);font-size:1.15rem;font-weight:700}.learned-stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-top:3px;font-size:.68rem}.learned-examples-row{flex-wrap:wrap;gap:10px;display:flex}.learned-example-thumb{flex-direction:column;align-items:center;gap:4px;display:flex}.learned-thumb-img{object-fit:cover;border:1px solid var(--bg-active);border-radius:6px;width:80px;height:60px}.learned-thumb-label{color:var(--text-dim);font-size:.68rem}.learned-patterns-list{flex-direction:column;gap:6px;display:flex}.learned-pattern-row{border-bottom:1px solid var(--bg-surface2);flex-wrap:wrap;align-items:center;gap:10px;padding:7px 0;display:flex}.learned-pattern-row:last-child{border-bottom:none}.learned-pattern-count{color:var(--text-dim);min-width:28px;font-size:.75rem;font-weight:700}.learned-pattern-samples{flex-wrap:wrap;flex:1;gap:6px;display:flex}.learned-pattern-sample{background:var(--bg-surface2);color:var(--text-secondary);border-radius:4px;padding:2px 8px;font-family:monospace;font-size:.72rem}@media (width<=600px){.learned-stats-row{grid-template-columns:1fr 1fr}}.navbar-template-link{color:var(--accent-dim);border-radius:6px;padding:4px 8px;font-size:.82rem;text-decoration:none;transition:background .15s}.navbar-template-link:hover{color:var(--accent-light);background:#1a2340}.landing-section{margin-top:64px}.landing-section-title{text-align:center;letter-spacing:-.5px;margin:0 0 36px;font-size:1.6rem;font-weight:700}.how-steps{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;display:grid}.how-step{background:var(--bg-plan-g1);border:1px solid var(--bg-active);border-radius:12px;gap:14px;padding:20px 18px;display:flex}.how-step-num{background:var(--accent-radio-bg);width:32px;height:32px;color:var(--accent-dim);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:.9rem;font-weight:700;display:flex}.how-step-body h4{margin:0 0 6px;font-size:.95rem}.how-step-body p{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.5}.how-step-btn{margin-top:10px;font-size:.75rem!important}.landing-template-cta{background:linear-gradient(135deg, var(--bg-plan-g1) 0%, var(--bg-plan-g2) 100%);border:1px solid var(--border-plan-g);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px;margin-top:48px;margin-bottom:48px;padding:28px 32px;display:flex;position:relative;overflow:hidden}.landing-template-left{flex:1;align-items:flex-start;gap:20px;min-width:260px;display:flex}.landing-template-doc-icon{width:48px;height:56px;color:var(--accent-link);flex-shrink:0;margin-top:2px}.landing-template-doc-icon svg{width:100%;height:100%}.landing-template-text{flex-direction:column;gap:0;display:flex}.landing-template-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--accent-link);background:color-mix(in srgb, var(--accent-link) 12%, transparent);border:1px solid color-mix(in srgb, var(--accent-link) 28%, transparent);border-radius:4px;align-self:flex-start;margin-bottom:8px;padding:2px 7px;font-size:.67rem;font-weight:800;display:inline-block}.landing-template-text h3{color:var(--text-primary);margin:0 0 8px;font-size:1.15rem;font-weight:800}.landing-template-text p{color:var(--text-muted);margin:0 0 12px;font-size:.85rem;line-height:1.6}.landing-template-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.landing-template-chips span{color:var(--text-dim);background:color-mix(in srgb, var(--accent-link) 8%, transparent);border:1px solid color-mix(in srgb, var(--accent-link) 18%, transparent);border-radius:99px;padding:3px 10px;font-size:.72rem;font-weight:500}.landing-template-btn{white-space:nowrap;flex-shrink:0;padding:12px 24px;font-size:.92rem}.page-sub{color:var(--text-placeholder);margin:4px 0 0;font-size:.88rem}.upgrade-banner{background:var(--bg-plan-featured);border:1px solid var(--border-plan-feat);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;padding:14px 20px;display:flex}.upgrade-banner-body{color:var(--text-muted);font-size:.88rem}.upgrade-banner-body strong{color:var(--text-primary)}.scans-list{flex-direction:column;gap:6px;margin-top:8px;display:flex}.scan-history-row{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:10px;flex-wrap:wrap;align-items:center;gap:16px;padding:14px 18px;display:flex}.scan-history-matchup{flex:1;align-items:center;gap:10px;min-width:200px;display:flex}.scan-history-team{color:var(--text-primary);font-size:.95rem;font-weight:700}.scan-history-vs{text-transform:uppercase;color:var(--text-faint2);letter-spacing:.5px;font-size:.68rem;font-weight:700}.scan-history-meta{color:var(--text-faint);flex-wrap:wrap;gap:12px;font-size:.78rem;display:flex}.scan-history-date{color:var(--text-faint2)}.upgrade-page{max-width:860px}.pricing-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:8px;display:grid}@media (width<=640px){.pricing-grid{grid-template-columns:1fr}}.pricing-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;flex-direction:column;padding:28px;display:flex}.pricing-card--featured{border-color:var(--accent-hover);background:var(--bg-plan-hover)}.pricing-card-header{margin-bottom:24px}.pricing-tier-name{text-transform:uppercase;letter-spacing:1px;color:var(--text-faint);margin-bottom:10px;font-size:.72rem;font-weight:800}.pricing-card--featured .pricing-tier-name{color:var(--accent-link)}.pricing-price{color:var(--text-primary);letter-spacing:-1px;margin-bottom:4px;font-size:2.4rem;font-weight:800}.pricing-badge-featured{color:var(--text-primary);margin-bottom:4px;font-size:1.4rem;font-weight:800;display:inline-block}.pricing-price-note{color:var(--text-faint);font-size:.78rem}.pricing-features{flex-direction:column;flex:1;gap:10px;margin:0 0 28px;padding:0;list-style:none;display:flex}.pricing-feature{color:var(--text-muted);align-items:flex-start;gap:10px;font-size:.88rem;display:flex}.pricing-check{color:var(--text-faint2);flex-shrink:0;margin-top:1px;font-weight:800}.pricing-check--blue{color:var(--accent-link)}.pricing-card-footer{margin-top:auto}.btn-block{text-align:center;width:100%;display:block}.pricing-current{opacity:.5;cursor:default;pointer-events:none}.upgrade-footer-note{color:var(--text-faint);text-align:center;margin-top:20px;font-size:.82rem}.link-btn{color:var(--accent-link);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.admin-tab-bar{border-bottom:1px solid var(--border-subtle);gap:4px;margin-top:8px;display:flex}.admin-tab{cursor:pointer;color:var(--text-dim2);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 18px;font-size:.88rem;transition:color .15s}.admin-tab:hover{color:var(--text-primary)}.admin-tab--active{color:var(--text-primary);border-bottom-color:var(--accent-link)}.admin-tab-count{background:var(--border-subtle);color:var(--text-dim2);border-radius:10px;margin-left:6px;padding:1px 6px;font-size:.72rem;display:inline-block}.admin-search{background:var(--bg-card);border:1px solid var(--border-subtle);width:100%;max-width:400px;color:var(--text-primary);border-radius:8px;outline:none;padding:8px 12px;font-size:.88rem}.admin-search:focus{border-color:var(--accent-link)}.admin-sub-list{flex-direction:column;gap:0;display:flex}.admin-sub-header{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);grid-template-columns:1fr 1fr 160px 1.6fr;gap:16px;padding:8px 16px;font-size:.72rem;font-weight:700;display:grid}.admin-sub-header--users{grid-template-columns:1fr auto}.admin-sub-row{border-top:1px solid var(--border-subtle);grid-template-columns:1fr 1fr 160px 1.6fr;align-items:center;gap:16px;padding:14px 16px;display:grid}.admin-sub-row--user{grid-template-columns:1fr auto}.admin-sub-name{color:var(--text-primary);font-size:.92rem;font-weight:600;display:block}.admin-sub-slug{color:var(--text-faint);margin-top:1px;font-size:.78rem;display:block}.admin-sub-email{color:var(--text-dim2);margin-top:1px;font-size:.78rem;display:block}.admin-sub-owner{flex-direction:column;display:flex}.admin-sub-info{flex-direction:column;gap:4px;display:flex}.admin-sub-badges{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.admin-sub-trial{color:#f59e0b;font-size:.72rem;font-weight:600}.admin-sub-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-sub-api-toggle{color:var(--text-dim);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;font-size:.78rem;font-weight:600;display:flex}.admin-sub-select{background:var(--bg-page);border:1px solid var(--border-subtle);color:var(--text-primary);cursor:pointer;border-radius:6px;outline:none;padding:5px 8px;font-size:.82rem}.admin-sub-select:focus{border-color:var(--accent-link)}.admin-sub-error{color:#ef4444;grid-column:1/-1;padding:4px 0;font-size:.8rem}.admin-sub-header--apikeys,.admin-apikey-row{grid-template-columns:1.4fr 1fr 1.6fr auto}.admin-apikey-main{flex-direction:column;gap:3px;display:flex}.admin-apikey-owner{flex-direction:column;justify-content:center;display:flex}.admin-apikey-meta{flex-direction:column;gap:3px;display:flex}.admin-apikey-preview{color:var(--text-faint);background:var(--bg-inset);letter-spacing:.04em;border-radius:4px;padding:2px 6px;font-family:SF Mono,Consolas,monospace;font-size:.72rem;display:inline-block}.admin-apikey-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:4px;padding:2px 7px;font-size:.68rem;font-weight:700;display:inline-block}.admin-apikey-badge--active{color:#22c55e;background:#22c55e22;border:1px solid #22c55e44}.admin-apikey-badge--expired{color:#ef4444;background:#ef444422;border:1px solid #ef444444}.admin-apikey-badge--disabled{color:#6a748f;background:#3d487022;border:1px solid #3d487044}.admin-apikey-scope{letter-spacing:.04em;color:#a78bfa;background:#a78bfa18;border:1px solid #a78bfa30;border-radius:4px;padding:2px 7px;font-size:.68rem;font-weight:600;display:inline-block}.admin-sub-stats{border:1px solid var(--border-subtle);border-radius:10px;flex-wrap:wrap;gap:0;margin-bottom:24px;display:flex;overflow:hidden}.admin-sub-stat{border-right:1px solid var(--border-subtle);background:var(--bg-card);flex-direction:column;flex:1;align-items:center;gap:4px;min-width:90px;padding:14px 12px;display:flex}.admin-sub-stat:last-child{border-right:none}.admin-sub-stat--mrr{background:var(--bg-inset)}.admin-sub-stat-val{color:var(--text-primary);font-size:1.4rem;font-weight:800;line-height:1}.admin-sub-stat-label{text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint);font-size:.68rem;font-weight:600}.api-info-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:10px;margin-bottom:28px;overflow:hidden}.api-info-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:16px;padding:11px 18px;font-size:.85rem;display:flex}.api-info-label{text-transform:uppercase;letter-spacing:.07em;width:90px;color:var(--text-faint);flex-shrink:0;font-size:.72rem;font-weight:700}.api-info-value{color:var(--text-muted);word-break:break-all;font-family:SF Mono,Consolas,monospace;font-size:.8rem}.api-info-link{color:var(--accent-link);font-size:.85rem;text-decoration:none}.api-info-link:hover{text-decoration:underline}.api-keys-section{margin-bottom:32px}.api-keys-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);align-items:center;gap:8px;margin:0 0 12px;font-size:.72rem;font-weight:700;display:flex}.api-keys-section-count{background:var(--border-subtle);color:var(--text-dim2);border-radius:10px;padding:1px 7px;font-size:.7rem}.api-key-list{flex-direction:column;gap:0;display:flex}.api-key-row{border:1px solid var(--border-subtle);background:var(--bg-card);border-radius:10px;flex-direction:column;gap:10px;margin-bottom:10px;padding:16px 18px;display:flex}.api-key-row-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.api-key-row-name-wrap{align-items:center;gap:8px;display:flex}.api-key-row-name{color:var(--text-primary);font-size:.95rem;font-weight:600}.api-key-row-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.api-key-status{text-transform:uppercase;letter-spacing:.06em;border-radius:4px;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-block}.api-key-status--active{color:#22c55e;background:#22c55e22;border:1px solid #22c55e44}.api-key-status--expired{color:#ef4444;background:#ef444422;border:1px solid #ef444444}.api-key-status--disabled{color:#6a748f;background:#3d487022;border:1px solid #3d487044}.api-key-preview-row{background:var(--bg-inset);border-radius:6px;align-items:center;gap:10px;padding:8px 12px;display:flex}.api-key-preview-code{color:var(--text-muted);letter-spacing:.04em;word-break:break-all;flex:1;font-family:SF Mono,Consolas,monospace;font-size:.82rem}.api-key-copy-btn{background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-dim);cursor:pointer;white-space:nowrap;border-radius:5px;flex-shrink:0;padding:3px 10px;font-size:.75rem;font-weight:600;transition:color .12s}.api-key-copy-btn:hover{color:var(--accent-link)}.api-key-row-meta{color:var(--text-faint);flex-wrap:wrap;gap:12px;font-size:.75rem;display:flex}.api-key-scope-tag{color:#a78bfa;background:#a78bfa18;border:1px solid #a78bfa30;border-radius:4px;margin-right:3px;padding:1px 6px;font-family:SF Mono,Consolas,monospace;font-size:.7rem}.api-key-row-desc{color:var(--text-dim2);margin:0;font-size:.8rem}.api-empty{text-align:center;color:var(--text-muted);padding:40px 20px}.api-empty p{margin:0 0 16px}.api-key-new-form{flex-direction:column;gap:18px;display:flex}.api-key-new-title{color:var(--text-primary);margin:0 0 4px;font-size:1rem;font-weight:700}.api-key-field{flex-direction:column;gap:6px;display:flex}.api-key-label{color:var(--text-muted);font-size:.8rem;font-weight:600}.api-key-error{color:#ef4444;margin:0;font-size:.82rem}.api-key-new-actions{gap:8px;display:flex}.api-key-scope-grid{flex-direction:column;gap:6px;display:flex}.api-key-scope-check{border:1px solid var(--border-subtle);background:var(--bg-inset);cursor:pointer;border-radius:8px;grid-template-columns:auto 1fr 2fr;align-items:center;gap:8px 12px;padding:10px 12px;transition:border-color .12s;display:grid}.api-key-scope-check--on{border-color:var(--accent-link);background:var(--accent-radio-bg)}.api-key-scope-check input{accent-color:var(--accent-link);cursor:pointer;margin:0}.api-key-scope-check-label{color:var(--text-primary);font-size:.85rem;font-weight:600}.api-key-scope-check-desc{color:var(--text-faint);font-size:.78rem}.api-key-reveal-banner{color:#f59e0b;background:#f59e0b18;border:1px solid #f59e0b44;border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px 14px;font-size:.85rem;display:flex}.api-key-reveal-banner p{margin:0}.api-key-reveal-value{background:var(--bg-inset);border-radius:8px;align-items:center;gap:10px;padding:12px 14px;display:flex}.api-key-reveal-value code{color:var(--text-muted);word-break:break-all;flex:1;font-family:SF Mono,Consolas,monospace;font-size:.82rem}.api-quickstart{margin-top:40px}.api-quickstart-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);margin:0 0 10px;font-size:.72rem;font-weight:700}.api-quickstart-tabs{gap:4px;margin-bottom:0;display:flex}.api-qs-tab{cursor:pointer;color:var(--text-dim2);background:0 0;border:none;border-bottom:2px solid #0000;padding:7px 14px;font-size:.82rem;transition:color .12s}.api-qs-tab:hover{color:var(--text-primary)}.api-qs-tab--active{color:var(--text-primary);border-bottom-color:var(--accent-link)}.api-quickstart-code{background:var(--bg-inset);border:1px solid var(--border-subtle);color:var(--text-muted);white-space:pre;border-radius:0 8px 8px;margin:0;padding:16px 18px;font-family:SF Mono,Consolas,monospace;font-size:.78rem;line-height:1.6;overflow-x:auto}.api-upgrade-gate{text-align:center;flex-direction:column;align-items:center;gap:16px;max-width:480px;margin:60px auto;display:flex}.api-upgrade-icon{font-size:2.4rem}.api-upgrade-gate h2{color:var(--text-primary);margin:0;font-size:1.4rem;font-weight:800}.api-upgrade-gate p{color:var(--text-muted);margin:0;font-size:.92rem;line-height:1.6}.api-upgrade-tiers{flex-wrap:wrap;gap:12px;width:100%;display:flex}.api-upgrade-tier{background:var(--bg-card);border:1px solid var(--border-subtle);text-align:left;border-radius:10px;flex-direction:column;flex:1;gap:6px;min-width:180px;padding:16px;display:flex}.api-upgrade-tier strong{color:var(--text-primary);font-size:.9rem}.api-upgrade-tier span{color:var(--text-muted);font-size:.8rem;line-height:1.5}.api-upgrade-tier--featured{border-color:var(--accent-link);background:var(--accent-radio-bg)}.api-upgrade-tier--featured strong{color:var(--accent-link)}.extract-scoreboard{border-bottom:1px solid var(--border-subtle);align-items:center;gap:16px;margin-bottom:20px;padding-bottom:20px;display:flex}.extract-team{flex:1}.extract-team--right{text-align:right}.extract-team-input{width:100%;font-size:1.1rem;font-weight:700}.extract-vs{text-transform:uppercase;letter-spacing:1px;color:var(--text-faint2);flex-shrink:0;font-size:.72rem;font-weight:700}.extract-meta-row{flex-wrap:wrap;gap:16px;margin-bottom:24px;display:flex}.extract-meta-field{color:var(--text-placeholder);flex-direction:column;gap:5px;min-width:160px;font-size:.8rem;font-weight:600;display:flex}.extract-download-bar{border-top:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:16px;margin-top:28px;padding-top:20px;display:flex}.extract-download-hint{color:var(--text-faint);font-size:.8rem}.onboard-empty{max-width:560px}.onboard-intro{color:var(--text-muted);margin:0 0 28px;font-size:.95rem}.onboard-steps{flex-direction:column;gap:0;display:flex}.onboard-step{border-bottom:1px solid var(--bg-surface2);gap:16px;padding:18px 0;display:flex}.onboard-step:last-child{border-bottom:none}.onboard-step--done .onboard-step-num{color:#4ade80;background:#14532d}.onboard-step--done .onboard-step-body strong{color:var(--text-dim)}.onboard-step-num{background:var(--accent-radio-bg);width:30px;height:30px;color:var(--accent-dim);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:.85rem;font-weight:700;display:flex}.onboard-step-body{flex-direction:column;gap:4px;display:flex}.onboard-step-body strong{font-size:.95rem}.onboard-step-body p{color:var(--text-muted);margin:0;font-size:.85rem;line-height:1.5}.onboard-step-body .btn{align-self:flex-start;margin-top:8px}.league-card-logo--img{object-fit:contain;background:var(--bg-active);border-radius:10px;width:44px;height:44px}@media (width<=600px){.how-steps{grid-template-columns:1fr}.landing-template-cta{flex-direction:column;align-items:flex-start}.landing-template-btn{text-align:center;width:100%}}.modal-overlay{z-index:500;background:#0000008c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-box{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;width:100%;max-width:680px;max-height:90vh;overflow-y:auto;box-shadow:0 24px 80px #00000080}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.modal-header h2{margin:0;font-size:1.1rem;font-weight:700}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:1.1rem;line-height:1}.modal-close:hover{color:var(--text-primary);background:var(--border-mid)}.modal-footer{border-top:1px solid var(--border-subtle);justify-content:flex-end;gap:10px;margin-top:4px;padding:16px 24px 20px;display:flex}.lp-groups{flex-direction:column;gap:24px;display:flex}.lp-group-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:8px;font-size:.72rem;font-weight:700}.lp-row{justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.lp-row--border{border-bottom:1px solid var(--border-subtle)}.lp-row-info{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.lp-row-title{font-size:.92rem;font-weight:600}.lp-row-meta{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.lp-row-actions{flex-shrink:0;gap:8px;display:flex}.lp-badge{text-transform:uppercase;letter-spacing:.06em;border-radius:4px;padding:2px 8px;font-size:.68rem;font-weight:700}.lp-badge--draft{background:var(--bg-inset);color:var(--text-muted);border:1px solid var(--border)}.lp-modal{max-width:760px}.lp-form{flex-direction:column;gap:16px;padding:20px 24px;display:flex}.lp-form label{color:var(--text-dim2);flex-direction:column;gap:6px;font-size:.85rem;font-weight:500;display:flex}.lp-form input,.lp-form textarea{background:var(--bg-page);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:8px;outline:none;padding:9px 12px;font-family:inherit;font-size:.9rem;transition:border-color .15s}.lp-form input:focus,.lp-form textarea:focus{border-color:var(--accent-link)}.lp-form-row{align-items:flex-end;gap:12px;display:flex}.lp-form-row>label{flex:1;min-width:0}.lp-form-row>label:last-child{flex:0 0 100px}.lp-content-editor{resize:vertical;min-height:200px;font-family:Menlo,Consolas,monospace;font-size:.85rem;line-height:1.6}.lp-hint{color:var(--text-muted);font-size:.75rem;font-weight:400}.lp-required{color:#f87171}.lp-checkbox-label{cursor:pointer;align-items:center;flex-direction:row!important;gap:10px!important}.lp-checkbox-label input[type=checkbox]{cursor:pointer;width:16px;height:16px}.form-error{color:#f87171;background:#f871711a;border:1px solid #f871714d;border-radius:8px;padding:10px 14px;font-size:.85rem}.pub-custom-page{max-width:760px}.pub-custom-page-header{border-bottom:1px solid var(--border-subtle);margin-bottom:28px;padding-bottom:16px}.pub-custom-page-title{letter-spacing:-.5px;margin:0;font-size:2rem;font-weight:800}.pub-markdown{color:var(--text-secondary);font-size:.95rem;line-height:1.75}.pub-markdown h1,.pub-markdown h2,.pub-markdown h3,.pub-markdown h4,.pub-markdown h5,.pub-markdown h6{color:var(--text-primary);letter-spacing:-.3px;margin:1.5em 0 .5em;font-weight:700}.pub-markdown h1{font-size:1.6rem}.pub-markdown h2{font-size:1.3rem}.pub-markdown h3{font-size:1.1rem}.pub-markdown p{margin:0 0 1em}.pub-markdown a{color:var(--pub-accent,var(--accent-link));text-decoration:underline}.pub-markdown ul,.pub-markdown ol{margin:0 0 1em 1.5em}.pub-markdown li{margin-bottom:.3em}.pub-markdown blockquote{border-left:3px solid var(--accent-link);background:var(--bg-inset);color:var(--text-muted);border-radius:0 8px 8px 0;margin:1em 0;padding:8px 16px}.pub-markdown code{background:var(--bg-inset);border-radius:4px;padding:2px 6px;font-family:Menlo,Consolas,monospace;font-size:.88em}.pub-markdown pre{background:var(--bg-inset);border-radius:8px;margin:0 0 1em;padding:16px;overflow-x:auto}.pub-markdown pre code{background:0 0;padding:0}.pub-markdown hr{border:none;border-top:1px solid var(--border-subtle);margin:1.5em 0}.pub-markdown table{border-collapse:collapse;width:100%;margin-bottom:1em}.pub-markdown th,.pub-markdown td{border:1px solid var(--border-subtle);text-align:left;padding:8px 12px}.pub-markdown th{background:var(--bg-inset);text-transform:uppercase;font-size:.82rem;font-weight:700}.se-page{max-width:1200px;margin:0 auto;padding:24px 16px 48px}.se-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.se-title{letter-spacing:-.5px;margin:0;font-size:1.6rem;font-weight:900}.se-subtitle{color:var(--text-dim);margin:4px 0 0;font-size:.8rem}.se-lastn{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.se-lastn-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint2);font-size:.72rem;font-weight:700}.se-lastn-input-row{align-items:center;gap:6px;display:flex}.se-lastn-input{background:var(--bg-inset);border:1px solid var(--border-subtle);width:68px;color:var(--text-primary);text-align:center;border-radius:7px;padding:6px 10px;font-size:.88rem}.se-lastn-input:focus{border-color:var(--accent-link);outline:none}.se-lastn-btn{background:var(--accent-link);color:#fff;cursor:pointer;border:none;border-radius:7px;padding:6px 14px;font-size:.82rem;font-weight:700}.se-lastn-btn:hover{opacity:.85}.se-lastn-clear{border:1px solid var(--border-subtle);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:7px;padding:6px 12px;font-size:.8rem}.se-lastn-clear:hover{border-color:var(--border-active);color:var(--text-secondary)}.se-layout{grid-template-columns:280px 1fr;align-items:start;gap:20px;display:grid}@media (width<=860px){.se-layout{grid-template-columns:1fr}}.se-sidebar{flex-direction:column;gap:16px;max-height:calc(100vh - 100px);display:flex;position:sticky;top:72px;overflow-y:auto}.se-sidebar-section{background:var(--bg-pub-card);border:1px solid var(--border-dark);border-radius:12px;padding:14px}.se-sidebar-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint2);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:.72rem;font-weight:700;display:flex}.se-player-count{background:var(--bg-active);color:var(--text-dim);border-radius:10px;padding:1px 7px;font-size:.68rem}.se-search{background:var(--bg-inset);border:1px solid var(--border-dark);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:8px;margin-bottom:8px;padding:7px 10px;font-size:.85rem}.se-search:focus{border-color:var(--accent-link);outline:none}.se-player-list{flex-direction:column;gap:2px;max-height:280px;display:flex;overflow-y:auto}.se-player-row{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:8px;width:100%;padding:7px 8px;transition:background .1s,border-color .1s;display:flex}.se-player-row:hover:not(:disabled){background:var(--bg-active)}.se-player-row.selected{background:color-mix(in srgb, var(--sel-color,var(--accent-link)) 14%, transparent);border-color:color-mix(in srgb, var(--sel-color,var(--accent-link)) 40%, transparent)}.se-player-row:disabled{opacity:.35;cursor:not-allowed}.se-player-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.se-player-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.se-player-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.se-player-jersey{color:var(--text-faint);font-size:.72rem}.se-player-team{color:var(--text-faint2);font-size:.7rem}.se-player-pts{color:var(--text-dim);flex-shrink:0;font-size:.75rem;font-weight:700}.se-rank-tabs{gap:4px;margin-bottom:10px;display:flex}.se-rank-tab{background:var(--bg-inset);border:1px solid var(--border-dark);color:var(--text-dim);cursor:pointer;border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:700}.se-rank-tab.active{background:var(--accent-link);border-color:var(--accent-link);color:#fff}.se-rank-list{flex-direction:column;gap:5px;display:flex}.se-rank-row{cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:3px 4px;transition:background .1s;display:flex}.se-rank-row:hover,.se-rank-row.selected{background:var(--bg-active)}.se-rank-num{color:var(--text-faint2);text-align:right;flex-shrink:0;min-width:16px;font-size:.68rem}.se-rank-name{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;min-width:70px;font-size:.8rem;overflow:hidden}.se-rank-bar-wrap{background:var(--bg-active);border-radius:3px;flex:1;height:6px;overflow:hidden}.se-rank-bar{border-radius:3px;height:100%;transition:width .3s}.se-rank-val{color:var(--text-secondary);text-align:right;flex-shrink:0;min-width:22px;font-size:.75rem;font-weight:700}.se-main{flex-direction:column;gap:16px;display:flex}.se-controls-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.se-mode-toggle{background:var(--bg-inset);border:1px solid var(--border-dark);border-radius:8px;flex-shrink:0;display:flex;overflow:hidden}.se-mode-btn{color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:6px 14px;font-size:.8rem;font-weight:700;transition:background .12s,color .12s}.se-mode-btn.active{background:var(--accent-link);color:#fff}.se-mode-btn:not(.active):hover{background:var(--bg-active);color:var(--text-secondary)}.se-stat-tabs{flex-wrap:wrap;gap:5px;display:flex}.se-stat-tab{background:var(--bg-pub-card);border:1px solid var(--border-dark);color:var(--text-dim);cursor:pointer;border-radius:7px;padding:6px 16px;font-size:.82rem;font-weight:700;transition:all .12s}.se-stat-tab:hover{border-color:var(--border-subtle);color:var(--text-secondary)}.se-stat-tab.active{background:var(--accent-link);border-color:var(--accent-link);color:#fff}.se-chips{flex-wrap:wrap;gap:6px;display:flex}.se-chip{color:var(--text-primary);background:color-mix(in srgb, var(--chip-color,#5c7cfa) 18%, transparent);border:1px solid color-mix(in srgb, var(--chip-color,#5c7cfa) 50%, transparent);border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:.8rem;font-weight:600;display:flex}.se-chip-logo{object-fit:contain;border-radius:2px;width:16px;height:16px}.se-chip-dot{background:var(--chip-color,#5c7cfa);border-radius:50%;flex-shrink:0;width:8px;height:8px}.se-chip-remove{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:none;padding:0 0 0 2px;font-size:1rem;line-height:1}.se-chip-remove:hover{opacity:1}.se-chart-wrap{background:var(--bg-pub-card);border:1px solid var(--border-dark);border-radius:12px;padding:20px 16px 12px}.se-chart-empty{height:300px;color:var(--text-faint2);justify-content:center;align-items:center;font-size:.9rem;display:flex}.se-chart-label{color:var(--text-faint2);text-align:center;margin-top:-4px;font-size:.72rem}.se-table-wrap{overflow-x:auto}.se-table .se-table-dot{vertical-align:middle;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-right:6px;display:inline-block}.ar-section{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.ar-section-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:0 2px;font-size:.75rem;font-weight:700}.ar-row{background:var(--bg-card);align-items:center;gap:16px;padding:14px 20px;display:flex}.ar-row--border{border-bottom:1px solid var(--border-subtle)}.ar-row-thumb{object-fit:cover;border-radius:6px;flex-shrink:0;width:56px;height:40px}.ar-row-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ar-row-title{white-space:nowrap;text-overflow:ellipsis;font-size:.92rem;font-weight:600;overflow:hidden}.ar-row-meta{color:var(--text-muted);font-size:.78rem}.ar-row-actions{flex-shrink:0;gap:8px;display:flex}.ar-badge{font-size:.7rem}.ar-badge--pinned{margin-right:4px}.ar-modal{width:760px;max-width:96vw}.ar-form{flex-direction:column;gap:16px;padding:24px;display:flex}.ar-form label{color:var(--text-label);flex-direction:column;gap:6px;font-size:.85rem;font-weight:600;display:flex}.ar-form input,.ar-form select,.ar-form textarea{font-size:.9rem}.ar-body-editor{resize:vertical;min-height:240px;font-family:inherit;line-height:1.6}.ar-required{color:var(--accent)}.ar-hint{color:var(--text-muted);margin-left:4px;font-size:.78rem;font-weight:400}.ar-cover-row{align-items:center;gap:8px;display:flex}.ar-cover-url{flex:1;min-width:0}.ar-cover-preview{object-fit:cover;border-radius:8px;max-width:100%;max-height:120px;margin-top:8px}.ar-form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=540px){.ar-form-row{grid-template-columns:1fr}}.ar-checkbox-label{cursor:pointer;align-items:center;gap:10px;flex-direction:row!important;font-weight:500!important}.ar-checkbox-label input[type=checkbox]{width:16px;height:16px}.ar-form-actions{border-top:1px solid var(--border-subtle);justify-content:flex-end;gap:12px;padding-top:8px;display:flex}.pub-news-empty{text-align:center;padding:80px 0}.pub-news-pinned{flex-direction:column;gap:0;margin-bottom:32px;display:flex}.pub-news-pinned .pub-news-card--featured{background:var(--bg-pub-card);border:1px solid var(--border-dark);color:inherit;border-radius:14px;grid-template-columns:380px 1fr;text-decoration:none;transition:box-shadow .18s,transform .18s;display:grid;overflow:hidden}.pub-news-pinned .pub-news-card--featured:hover{transform:translateY(-2px);box-shadow:0 8px 28px #00000038}.pub-news-pinned .pub-news-card--featured .pub-news-cover{height:100%;min-height:220px}.pub-news-pinned .pub-news-card--featured .pub-news-cover img{object-fit:cover;width:100%;height:100%}@media (width<=700px){.pub-news-pinned .pub-news-card--featured{grid-template-columns:1fr}}.pub-news-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;display:grid}.pub-news-card{background:var(--bg-pub-card);border:1px solid var(--border-dark);color:inherit;border-radius:12px;flex-direction:column;text-decoration:none;transition:box-shadow .18s,transform .18s;display:flex;overflow:hidden}.pub-news-card:hover{transform:translateY(-2px);box-shadow:0 6px 22px #0003}.pub-news-cover{flex-shrink:0;width:100%;height:180px;overflow:hidden}.pub-news-cover img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.pub-news-card:hover .pub-news-cover img{transform:scale(1.04)}.pub-news-body{flex-direction:column;flex:1;gap:8px;padding:18px 20px 20px;display:flex}.pub-news-tags{flex-wrap:wrap;gap:6px;display:flex}.pub-news-tag{letter-spacing:.05em;text-transform:uppercase;background:var(--pub-accent,var(--accent));color:#fff;opacity:.85;border-radius:99px;padding:2px 8px;font-size:.7rem;font-weight:600}.pub-news-title{margin:0;font-size:1rem;font-weight:700;line-height:1.35}.pub-news-summary{color:var(--pub-muted,var(--text-muted));flex:1;margin:0;font-size:.87rem;line-height:1.5}.pub-news-meta{color:var(--pub-muted,var(--text-muted));margin-top:auto;font-size:.78rem}.pub-article-hero{width:100%;max-height:420px;overflow:hidden}.pub-article-hero img{object-fit:cover;width:100%;height:100%;display:block}.pub-article-header{margin-bottom:24px}.pub-article-back{color:var(--pub-accent,var(--accent));align-items:center;gap:6px;margin-bottom:16px;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.pub-article-back:hover{text-decoration:underline}.pub-article-title{margin:0 0 12px;font-size:2rem;font-weight:800;line-height:1.2}@media (width<=600px){.pub-article-title{font-size:1.5rem}}.pub-article-meta{color:var(--pub-muted,var(--text-muted));font-size:.85rem}.pub-article-summary{color:var(--pub-muted,var(--text-muted));border-left:3px solid var(--pub-accent,var(--accent));margin:0 0 28px;padding-left:16px;font-size:1.05rem;line-height:1.6}.pub-article-body{max-width:720px;font-size:1rem;line-height:1.75}.pub-article-body p{margin:0 0 1.4em}.sub-page{max-width:980px}.sub-trial-banner{background:color-mix(in srgb, #f59e0b 12%, var(--bg-card));border:1px solid #f59e0b66;border-radius:12px;align-items:flex-start;gap:14px;margin-bottom:20px;padding:16px 20px;display:flex}.sub-trial-icon{flex-shrink:0;font-size:1.4rem;line-height:1}.sub-trial-banner strong{color:var(--text-primary);font-size:.95rem}.sub-trial-banner p{color:var(--text-muted);margin:4px 0 0;font-size:.85rem}.sub-no-plan-banner{background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:12px;margin-bottom:24px;padding:18px 24px;font-size:.9rem}.sub-no-plan-banner strong{color:var(--text-primary)}.sub-current-banner{background:var(--bg-card);border:1px solid var(--border-subtle);border-left:4px solid var(--plan-accent,var(--accent));border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding:22px 28px;display:flex}.sub-current-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.sub-meta-chip{letter-spacing:.06em;text-transform:uppercase;border-radius:99px;padding:2px 8px;font-size:.7rem;font-weight:700}.sub-meta-chip--api{color:#a78bfa;background:#a78bfa24;border:1px solid #a78bfa4d}.sub-meta-chip--trial{color:#f59e0b;background:#f59e0b24;border:1px solid #f59e0b4d}.sub-meta-chip--warn{color:#ef4444;background:#ef444424;border:1px solid #ef44444d}.sub-billing-portal-btn{white-space:nowrap;font-size:.8rem}.sub-current-price{flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:4px;display:flex}.sub-price-addon{color:#5c7cfa;background:#5c7cfa1f;border:1px solid #5c7cfa4d;border-radius:99px;padding:2px 8px;font-size:.78rem}.sub-plan-top-badge{background:var(--card-accent,var(--accent));color:#fff;letter-spacing:.07em;text-transform:uppercase;text-align:center;padding:6px 12px;font-size:.68rem;font-weight:700}.sub-plan-top-badge--current{background:color-mix(in srgb, var(--card-accent) 18%, var(--bg-card));color:var(--card-accent)}.sub-plan-name{letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:.75rem;font-weight:700;display:block}.sub-plan-trial-pill{letter-spacing:.05em;color:#b45309;background:#f59e0b26;border:1px solid #f59e0b66;border-radius:99px;margin-bottom:8px;padding:2px 9px;font-size:.68rem;font-weight:700;display:inline-block}[data-theme=light] .sub-plan-trial-pill{color:#92400e}.sub-plan-limit{color:var(--text-faint2);margin:0;font-size:.75rem;font-style:italic}.sub-feature-item--no{color:var(--text-muted);opacity:.6}.sub-plan-btn{background:color-mix(in srgb, var(--btn-accent,var(--accent)) 10%, var(--bg-card));width:100%;color:var(--btn-accent,var(--accent));border:1.5px solid color-mix(in srgb, var(--btn-accent,var(--accent)) 45%, transparent);border-radius:8px;justify-content:center;padding:9px 14px;font-size:.85rem;font-weight:600}.sub-addon-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding:22px 28px;display:flex}.sub-addon-left{flex:1;min-width:0}.sub-addon-header{align-items:center;gap:10px;margin-bottom:6px;display:flex}.sub-addon-name{font-size:1rem;font-weight:700}.sub-addon-badge,.sub-addon-active-badge{letter-spacing:.07em;text-transform:uppercase;border-radius:99px;padding:2px 9px;font-size:.68rem;font-weight:700}.sub-addon-badge{color:#5c7cfa;background:#5c7cfa1f;border:1px solid #5c7cfa4d}.sub-addon-active-badge{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e4d}.sub-addon-tagline{color:var(--text-muted);margin:0 0 12px;font-size:.85rem}.sub-addon-features{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sub-addon-features li{color:var(--text-muted);gap:8px;font-size:.83rem;display:flex}.sub-addon-features li span{color:#5c7cfa;flex-shrink:0;font-weight:700}.sub-addon-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:12px;display:flex}.sub-addon-price{align-items:baseline;gap:3px;display:flex}.sub-addon-price span:first-child{color:var(--text-primary);font-size:1.6rem;font-weight:800}@media (width<=720px){.sub-plans-grid{grid-template-columns:1fr}.sub-current-banner{flex-direction:column;align-items:flex-start}.sub-current-right{align-items:flex-start}.sub-addon-card{flex-direction:column}.sub-addon-right{flex-flow:wrap;align-items:flex-start}}.sub-current-left{flex-direction:column;gap:4px;display:flex}.sub-current-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:.72rem;font-weight:700}.sub-current-tier{font-size:1.6rem;font-weight:800;line-height:1.1}.sub-current-tagline{color:var(--text-muted);margin:4px 0 0;font-size:.88rem}.sub-current-right{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.sub-status-badge{letter-spacing:.07em;text-transform:uppercase;background:color-mix(in srgb, var(--badge-color) 15%, transparent);color:var(--badge-color);border:1px solid color-mix(in srgb, var(--badge-color) 35%, transparent);border-radius:99px;padding:4px 12px;font-size:.75rem;font-weight:700}.sub-current-price{align-items:baseline;gap:3px;display:flex}.sub-price-amount{color:var(--text-primary);font-size:1.4rem;font-weight:800}.sub-price-period{color:var(--text-muted);font-size:.82rem}.sub-plans-heading{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin:0 0 16px;font-size:.75rem;font-weight:700}.sub-plans-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;margin-bottom:32px;display:grid}.sub-plan-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:14px;flex-direction:column;transition:box-shadow .18s,border-color .18s;display:flex;position:relative;overflow:hidden}.sub-plan-card:hover{box-shadow:0 4px 20px #0000001f}.sub-plan-card--current{border-color:var(--card-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--card-accent) 25%, transparent)}.sub-plan-card--recommended{border-color:var(--card-accent)}.sub-plan-recommended-badge{background:var(--card-accent,var(--accent));color:#fff;letter-spacing:.07em;text-transform:uppercase;text-align:center;padding:5px 12px;font-size:.68rem;font-weight:700}.sub-plan-recommended-badge--current{background:color-mix(in srgb, var(--card-accent) 20%, var(--bg-card));color:var(--card-accent)}.sub-plan-header{border-bottom:1px solid var(--border-subtle);padding:20px 20px 16px}.sub-plan-name{letter-spacing:.07em;text-transform:uppercase;font-size:.78rem;font-weight:700}.sub-plan-price{align-items:baseline;gap:3px;margin:8px 0 6px;display:flex}.sub-plan-amount{color:var(--text-primary);font-size:1.75rem;font-weight:800}.sub-plan-period{color:var(--text-muted);font-size:.82rem}.sub-plan-tagline{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.4}.sub-feature-list{flex-direction:column;flex:1;gap:8px;margin:0;padding:16px 20px;list-style:none;display:flex}.sub-feature-item{align-items:flex-start;gap:8px;font-size:.84rem;line-height:1.35;display:flex}.sub-feature-item--yes{color:var(--text-primary)}.sub-feature-item--no{color:var(--text-muted)}.sub-feature-item--no .sub-feature-check{color:var(--text-faint2)}.sub-feature-check{flex-shrink:0;font-size:.85rem;font-weight:700;line-height:1.35}.sub-plan-footer{padding:0 20px 20px}.sub-plan-btn{background:color-mix(in srgb, var(--btn-accent,var(--accent)) 12%, var(--bg-card));width:100%;color:var(--btn-accent,var(--accent));border:1px solid color-mix(in srgb, var(--btn-accent,var(--accent)) 35%, transparent);justify-content:center;font-size:.85rem}.sub-plan-btn:hover:not(:disabled){background:var(--btn-accent,var(--accent));color:#fff}.sub-plan-btn--current{background:var(--bg-subtle,var(--bg-card));color:var(--text-muted);border-color:var(--border-subtle);cursor:default}.sub-plan-btn--current:hover{background:var(--bg-subtle,var(--bg-card));color:var(--text-muted)}.sub-footer-note{color:var(--text-muted);text-align:center;padding:16px 0 8px;font-size:.83rem}.sub-footer-note a{color:var(--accent);text-decoration:none}.sub-footer-note a:hover{text-decoration:underline}@media (width<=600px){.sub-plans-grid{grid-template-columns:1fr 1fr}.sub-current-banner{flex-direction:column;align-items:flex-start}.sub-current-right{align-items:flex-start}}@media (width<=420px){.sub-plans-grid{grid-template-columns:1fr}}.pub-table-scroll{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.navbar-hamburger{cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;gap:5px;margin-left:auto;padding:8px;display:none}.navbar-hamburger:hover{background:var(--bg-navbar-active)}.navbar-hamburger-line{background:var(--text-navbar-muted);border-radius:1px;width:20px;height:2px;transition:background .15s;display:block}.navbar-hamburger:hover .navbar-hamburger-line{background:var(--text-navbar)}.navbar-mobile-overlay{z-index:199;background:#00000073;display:none;position:fixed;inset:58px 0 0}.navbar-mobile-overlay--open{display:block}.navbar-mobile-menu{background:var(--bg-navbar);border-left:1px solid var(--border-navbar);z-index:200;visibility:hidden;flex-direction:column;width:280px;max-width:85vw;padding:6px 0 24px;transition:transform .25s,visibility .25s;display:flex;position:fixed;top:58px;bottom:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-6px 0 28px #00000047}.navbar-mobile-menu--open{visibility:visible;transform:translate(0)}.navbar-mobile-menu-link{color:var(--text-navbar-muted);align-items:center;padding:12px 20px;font-size:.95rem;font-weight:500;text-decoration:none;transition:background .1s,color .1s;display:flex}.navbar-mobile-menu-link:hover,.navbar-mobile-menu-link.active{background:var(--bg-navbar-active);color:var(--text-navbar)}.navbar-mobile-menu-btn{width:100%;color:var(--text-navbar-muted);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;padding:12px 20px;font-family:inherit;font-size:.95rem;font-weight:500;transition:background .1s,color .1s;display:flex}.navbar-mobile-menu-btn:hover{background:var(--bg-navbar-active);color:var(--text-navbar)}.navbar-mobile-divider{background:var(--border-navbar);height:1px;margin:6px 0}@media (width<=768px){.navbar{padding:0 16px}.navbar-links,.navbar-auth{display:none!important}.navbar-hamburger{display:flex}}.pub-nav-hamburger{cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;gap:5px;margin-left:auto;padding:8px;display:none}.pub-nav-hamburger:hover{background:#ffffff12}.pub-nav-hamburger-line{background:var(--pub-nav-text,var(--text-navbar-muted));border-radius:1px;width:20px;height:2px;display:block}.pub-nav-mobile-overlay{z-index:199;background:#00000073;display:none;position:fixed;inset:56px 0 0}.pub-nav-mobile-overlay--open{display:block}.pub-nav-mobile-menu{background:var(--pub-nav-bg,var(--bg-pub-nav));border-left:1px solid var(--border-pub-nav);z-index:200;visibility:hidden;flex-direction:column;width:280px;max-width:85vw;padding:6px 0 24px;transition:transform .25s,visibility .25s;display:flex;position:fixed;top:56px;bottom:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-6px 0 28px #0000004d}.pub-nav-mobile-menu--open{visibility:visible;transform:translate(0)}.pub-nav-mobile-link{color:var(--pub-nav-text,var(--text-navbar-muted));opacity:.7;letter-spacing:.2px;border-left:3px solid #0000;align-items:center;padding:12px 20px;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .1s,color .1s,opacity .1s;display:flex}.pub-nav-mobile-link:hover,.pub-nav-mobile-link.active{opacity:1;color:var(--pub-nav-text,var(--text-navbar));background:#ffffff0f}.pub-nav-mobile-link.active{border-left-color:var(--pub-accent,var(--accent-link))}.pub-nav-mobile-section{text-transform:uppercase;letter-spacing:.1em;color:var(--text-faint2);padding:10px 20px 4px;font-size:.68rem;font-weight:700}.pub-nav-mobile-sub{color:var(--pub-nav-text,var(--text-navbar-muted));opacity:.7;border-left:3px solid #0000;align-items:center;gap:10px;padding:10px 20px 10px 32px;font-size:.88rem;font-weight:500;text-decoration:none;transition:background .1s,color .1s,opacity .1s;display:flex}.pub-nav-mobile-sub:hover{opacity:1;color:var(--pub-nav-text,var(--text-navbar));background:#ffffff0f}.pub-nav-mobile-sub.active{opacity:1;color:var(--pub-nav-text,var(--text-navbar));border-left-color:var(--pub-accent,var(--accent-link));background:#ffffff0f;font-weight:600}.pub-nav-mobile-sub--btn{cursor:pointer;text-align:left;background:0 0;border:none;width:100%;font-family:inherit}.pub-nav-mobile-sub--btn.active{opacity:1;color:var(--pub-nav-text,var(--text-navbar));font-weight:600}.pub-nav-mobile-sub-group{flex-direction:column;display:flex}.pub-nav-mobile-accordion{width:100%;color:var(--pub-nav-text,var(--text-navbar-muted));opacity:.7;text-align:left;cursor:pointer;letter-spacing:.2px;background:0 0;border:none;justify-content:space-between;align-items:center;padding:12px 20px;font-family:inherit;font-size:.95rem;font-weight:600;transition:background .1s,color .1s,opacity .1s;display:flex}.pub-nav-mobile-accordion:hover{opacity:1;color:var(--pub-nav-text,var(--text-navbar));background:#ffffff0f}.pub-nav-mobile-accordion.active{opacity:1;color:var(--pub-nav-text,var(--text-navbar));border-left:3px solid var(--pub-accent,var(--accent-link))}.pub-nav-mobile-caret{opacity:.6;font-size:.7rem;transition:transform .2s;display:inline-block}.pub-nav-mobile-caret.open{transform:rotate(180deg)}.pub-nav-mobile-divider{background:var(--border-pub-nav);height:1px;margin:8px 0}.pub-nav-mobile-theme{width:100%;color:var(--pub-nav-text,var(--text-navbar-muted));opacity:.7;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:12px 20px;font-family:inherit;font-size:.9rem;font-weight:500;transition:background .1s,color .1s,opacity .1s;display:flex}.pub-nav-mobile-theme:hover{opacity:1;color:var(--pub-nav-text,var(--text-navbar));background:#ffffff0f}@media (width<=768px){.pub-nav-inner{padding:0 12px}.pub-nav-links,.pub-nav-right{display:none!important}.pub-nav-hamburger{display:flex}.pub-main{padding:20px 14px 48px}}@media (width<=980px){.pub-nav-profile-name{display:none}}.sidebar-mobile-toggle{background:var(--bg-row-hover);border:1px solid var(--border-mid);color:var(--text-dim);cursor:pointer;border-radius:8px;align-items:center;gap:8px;width:fit-content;margin-bottom:16px;padding:7px 14px;font-family:inherit;font-size:.85rem;font-weight:600;display:none}.sidebar-mobile-toggle:hover{background:var(--bg-active);color:var(--text-primary)}.sidebar-mobile-overlay{z-index:140;background:#0000008c;display:none;position:fixed;inset:58px 0 0}.sidebar-mobile-overlay--open{display:block}@media (width<=768px){.league-sidebar{z-index:150;width:260px;height:calc(100vh - 58px);transition:transform .25s;position:fixed;top:58px;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.league-sidebar--open{transform:translate(0)}.league-content{max-width:100%;padding:16px 14px 32px}.sidebar-mobile-toggle{display:flex}}@media (width<=600px){.page{margin:16px auto;padding:0 14px}.page-header h1{font-size:1.3rem}.page-header h2{font-size:1.1rem}.auth-card{padding:28px 18px}.landing{padding:0 14px 48px}.landing-hero{padding:48px 0}.landing-hero-title{letter-spacing:-.8px;font-size:2rem}.landing-sub{font-size:.95rem}.landing-cta{flex-direction:column;align-items:stretch;gap:10px}.landing-cta .btn{text-align:center}.pub-player-hero{padding:16px 16px 14px}.pub-player-hero-top{gap:12px}.pub-player-hero-watermark{font-size:7rem}.pub-player-name{font-size:1.4rem}.pub-player-jersey-badge{width:52px;height:52px;font-size:1.2rem}.pub-player-avatar{width:56px;height:56px}.pub-hero-stats{gap:18px;margin-top:16px}.pub-hero-stat-val{font-size:1.5rem}.pub-form-tile{min-width:62px;padding:6px 8px}.pub-perf-box{min-width:68px;padding:10px 12px}.pub-perf-val{font-size:1.2rem}.pub-section-header-row{flex-direction:column;align-items:flex-start;gap:8px}.pub-player-seasons{padding:14px}.pub-team-name{font-size:1.3rem}.pub-team-card{padding:14px}.pub-team-logo,.pub-team-logo-placeholder{width:56px;height:56px}.tsb-row{grid-template-columns:100px 42px 1fr 48px;gap:6px}.tsb-label{font-size:.7rem}.pub-game-scoreboard{flex-direction:column}.pub-gsb-side{order:1;gap:10px;padding:12px 16px}.pub-gsb-side--away{flex-direction:row;order:2}.pub-gsb-team-info--away{text-align:left}.pub-gsb-center{border-left:none;border-right:none;border-top:1px solid var(--border-dark);border-bottom:none;flex-direction:column;order:3;align-items:center;gap:8px;min-width:auto;padding:12px 16px 14px}.pub-game-period-table{width:100%;max-width:340px}.pub-gsb-score{font-size:2rem}.pub-game-scoreboard:before,.pub-game-scoreboard:after{display:none}.pub-gd-tabs{padding-bottom:0;overflow-x:auto}.pub-gd-tab{white-space:nowrap;padding:8px 14px;font-size:.82rem}.pub-page-tabs{overflow-x:visible}.pub-page-tab{white-space:normal;text-align:center;flex:1;padding:10px 4px;font-size:.76rem;line-height:1.3}.pub-table .pub-col-sticky{z-index:2;background:var(--bg-page);position:sticky;left:0;box-shadow:6px 0 8px -6px #00000059}.pub-table thead .pub-col-sticky{background:var(--bg-inset);z-index:3}.pub-table-leader .pub-col-sticky{background:linear-gradient(#5c7cfa0f, #5c7cfa0f), var(--bg-page)}.pub-table tr:hover .pub-col-sticky{background:var(--bg-row-hover)}.pub-table-row--clickable:hover .pub-col-sticky{background:linear-gradient(#5c7cfa14, #5c7cfa14), var(--bg-page)}.modal-header{padding:14px 16px 12px}.modal-footer{padding:12px 16px 14px}.pub-home-card{padding:14px}.game-row{gap:8px;padding:8px 10px}.game-row-score{min-width:52px;font-size:.9rem}}@media (width<=400px){.pub-main{padding:14px 10px 40px}.page{padding:0 10px}.pub-gc-logo-wrap,.pub-gc-logo-img{width:28px;height:28px}.pub-gc-logo-badge{width:24px;height:24px;font-size:.7rem}.pub-gc-center{min-width:62px}.pub-gc-score-num{font-size:1.15rem}}.pub-breadcrumb{color:var(--text-faint);flex-wrap:wrap;align-items:center;gap:2px;min-height:24px;margin-bottom:18px;font-size:.78rem;display:flex}.pub-breadcrumb-home{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-weight:600;text-decoration:none;transition:color .15s;overflow:hidden}.pub-breadcrumb-home:hover{color:var(--pub-accent,var(--accent-link))}.pub-breadcrumb-entry{align-items:center;gap:2px;display:flex}.pub-breadcrumb-sep{color:var(--text-faint2);-webkit-user-select:none;user-select:none;padding:0 3px;font-size:.85rem}.pub-breadcrumb-item{color:var(--text-muted);white-space:nowrap;text-decoration:none;transition:color .15s}.pub-breadcrumb-item:hover{color:var(--pub-button-bg,var(--pub-accent,var(--accent-link)))}.pub-breadcrumb-item--current{color:var(--text-primary);font-weight:600}@media (width<=600px){.pub-breadcrumb{margin-bottom:12px;font-size:.72rem}.pub-breadcrumb-home{max-width:120px}}.pub-nav-mobile-user-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:24px;height:24px;margin-right:10px}.pub-nav-mobile-user-initial{background:var(--accent-link);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-right:10px;font-size:.7rem;font-weight:700;display:flex}.admin-row{border-top:1px solid var(--border-subtle);grid-template-columns:1.1fr 1.4fr 190px 1.8fr;align-items:start;gap:16px;padding:14px 16px;display:grid}.admin-row-header{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);border-top:none;align-items:center;padding-bottom:6px;font-size:.72rem;font-weight:700}.admin-row--user{grid-template-columns:1fr 200px 1.8fr}.admin-row-league{flex-direction:column;gap:2px;display:flex}.admin-row-owner{flex-direction:column;gap:4px;display:flex}.admin-row-status{flex-direction:column;gap:5px;display:flex}.admin-row-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-change-owner-btn{color:var(--accent-link);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-top:2px;padding:0;font-size:.72rem;text-decoration:underline}.admin-change-owner-btn:hover{opacity:.75}.admin-owner-info{flex-direction:column;gap:2px;display:flex}.admin-owner-form{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.admin-owner-input{background:var(--bg-page);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:6px;outline:none;min-width:180px;padding:4px 8px;font-size:.82rem}.admin-owner-input:focus{border-color:var(--accent-link)}.admin-owner-error{color:#ef4444;width:100%;font-size:.75rem}.schedule-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));align-items:start;gap:20px;display:grid}.schedule-card h2{margin-top:0;font-size:1.05rem}.schedule-card-sub{color:var(--text-muted);margin:4px 0 18px;font-size:.85rem;line-height:1.5}.schedule-card-sub code{background:#5c7cfa1f;border-radius:4px;padding:1px 5px;font-size:.78rem}.schedule-team-list{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px;max-height:180px;display:grid;overflow-y:auto}.schedule-team-check{color:var(--text-dim);cursor:pointer;align-items:center;gap:8px;font-size:.85rem;display:flex}.schedule-form-cols{flex-wrap:wrap;gap:18px;display:flex}.schedule-form-cols .form-row{flex:1;min-width:140px}.schedule-weekday-row{flex-wrap:wrap;gap:6px;display:flex}.schedule-weekday-btn{border:1px solid var(--border-plan-g,#ffffff1f);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;padding:6px 12px;font-size:.8rem}.schedule-weekday-btn.active{background:var(--accent-link);border-color:var(--accent-link);color:#fff}.schedule-csv-paste{resize:vertical;width:100%;color:var(--text-dim);border:1px solid var(--border-plan-g,#ffffff1f);background:0 0;border-radius:8px;padding:10px;font-family:ui-monospace,monospace;font-size:.78rem}.schedule-csv-paste:focus{border-color:var(--accent-link);outline:none}.suspension-section-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin:0 0 10px;font-size:.8rem}.suspension-list{flex-direction:column;gap:8px;display:flex}.suspension-row{border:1px solid var(--border-plan-g,#ffffff1a);border-radius:10px;flex-wrap:wrap;align-items:center;gap:16px;padding:12px 16px;display:flex}.suspension-row-main{flex:1;min-width:180px}.suspension-row-team{color:var(--text-muted);font-size:.85rem}.suspension-row-infraction{color:var(--text-muted);margin-top:2px;font-size:.8rem}.suspension-row-progress{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.suspension-row-count{font-size:.9rem;font-weight:700}.suspension-row-remaining{color:#f59e0b;font-size:.75rem}.migrate-banner{border-left:3px solid var(--accent-link);margin-bottom:20px}.landing-hero-note{color:var(--text-muted);margin-top:14px;font-size:.85rem}.landing-migrate-banner{background:linear-gradient(135deg, var(--bg-plan-g1) 0%, var(--bg-plan-g2) 100%);border:1px solid var(--border-plan-g);border-left:3px solid #f59e0b;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px;margin-top:40px;padding:24px 32px;display:flex}.landing-migrate-banner h3{margin:8px 0 6px}.landing-migrate-banner p{color:var(--text-muted);max-width:640px;margin:0;font-size:.92rem}.landing-pricing-pitch{text-align:center;max-width:720px;margin-left:auto;margin-right:auto}.landing-pricing-pitch p{color:var(--text-muted);margin:12px 0 20px;line-height:1.6}.sub-interval-toggle{border:1px solid var(--border-plan-g,#ffffff1f);border-radius:999px;margin:8px 0 4px;padding:2px;display:inline-flex}.sub-interval-btn{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:999px;padding:4px 10px;font-size:.72rem}.sub-interval-btn.active{background:var(--card-accent,var(--accent-link));color:#fff}.pub-suspensions{margin-top:36px}.pub-suspensions-title{text-transform:uppercase;letter-spacing:.6px;opacity:.8;margin:0 0 12px;font-size:.85rem}.migrate-faq{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;display:grid}.migrate-faq-item h4{margin:0 0 6px;font-size:.98rem}.migrate-faq-item p{color:var(--text-muted);margin:0;font-size:.88rem;line-height:1.55}.season-selector-select{appearance:none;background:var(--pub-surface,#1e2440) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%236a748f'/%3E%3C/svg%3E") no-repeat right 8px center;border:1px solid var(--pub-border,#2a3057);color:var(--pub-text,#e2e8f0);cursor:pointer;border-radius:6px;margin-bottom:14px;padding:5px 28px 5px 10px;font-size:.8rem;transition:border-color .15s}.season-selector-select:hover{border-color:var(--pub-accent,#5c7cfa)}.season-selector-select:focus{border-color:var(--pub-accent,#5c7cfa);outline:none}.customizer-page{flex-direction:column;width:calc(100% + 72px);max-width:none;min-height:calc(100vh - 60px);margin:-32px -36px;display:flex}.customizer-header{border-bottom:1px solid var(--border-subtle);flex-shrink:0;align-items:center;gap:16px;padding:12px 20px;display:flex}.customizer-header h2{margin:0;font-size:1.1rem}.customizer-header-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.customizer-layout{flex:1;display:flex}.customizer-controls{border-right:1px solid var(--border-subtle);flex-direction:column;width:380px;min-width:380px;display:flex}.customizer-tabs{border-bottom:1px solid var(--border-subtle);flex-shrink:0;gap:0;display:flex}.customizer-tab{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:10px 12px;font-size:.82rem;font-weight:600;transition:color .15s,border-color .15s}.customizer-tab:hover{color:var(--text-primary)}.customizer-tab.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}.customizer-tab-body{padding:16px}.customizer-preview{background:var(--bg-inset);flex-direction:column;flex:1;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.customizer-preview-toolbar{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);flex-shrink:0;align-items:center;padding:8px 16px;display:flex}.customizer-preview-title{color:var(--text-dim);font-size:.82rem;font-weight:600}.customizer-device-toggle{gap:4px;margin-left:auto;display:flex}.customizer-device-btn{border:1px solid var(--border-subtle);color:var(--text-dim);cursor:pointer;text-transform:capitalize;background:0 0;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;transition:all .15s;display:flex}.customizer-device-btn:hover{border-color:var(--border-active);color:var(--text-primary)}.customizer-device-btn.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.customizer-presets-bar{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;padding:8px 12px;display:flex}.customizer-preset-chip{border:1px solid var(--border-subtle);color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border-radius:14px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.customizer-preset-chip:hover{border-color:var(--accent-primary);color:var(--text-primary)}.customizer-preset-chip.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.customizer-preset-chip--add{opacity:.7;border-style:dashed}.customizer-preset-chip--add:hover{opacity:1}.customizer-preset-chip-delete{opacity:.5;margin-left:2px;font-size:1rem;line-height:1}.customizer-preset-chip-delete:hover{opacity:1;color:#ef4444}.customizer-preset-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.customizer-preset-dot--live{background:#22c55e}.customizer-preset-save-form{align-items:center;gap:4px;display:flex}.customizer-preset-name-input{width:120px;padding:3px 8px;font-size:.78rem}.customizer-live-dot{background:#22c55e;border-radius:50%;width:8px;height:8px;margin-right:6px;animation:2s infinite live-pulse;display:inline-block}.customizer-draft-dot{background:#f59e0b;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.4}}.site-preview{flex-direction:column;flex:1;align-items:center;padding:16px;display:flex;overflow:hidden}.site-preview-device-bar{display:none}.site-preview-frame-wrap{border-radius:8px;flex:1;width:100%;transition:max-width .3s;position:relative;overflow:hidden;box-shadow:0 4px 24px #0000004d}.site-preview-loading{background:var(--bg-inset);color:var(--text-dim);z-index:2;justify-content:center;align-items:center;font-size:.9rem;display:flex;position:absolute;inset:0}.site-preview-iframe{background:var(--bg-page);border:none;width:100%;height:100%}.tc-tab-content{flex-direction:column;gap:4px;display:flex}.tc-section{margin-bottom:16px}.tc-section-title{text-transform:uppercase;letter-spacing:.8px;color:var(--text-faint2);border-bottom:1px solid var(--border-faint);margin-bottom:10px;padding-bottom:6px;font-size:.78rem;font-weight:700}.tc-field{margin-bottom:12px}.tc-field-label{color:var(--text-secondary);margin-bottom:6px;font-size:.8rem;font-weight:600}.tc-color-row{grid-template-columns:140px 32px 1fr 48px;align-items:center;gap:8px;min-height:32px;margin-bottom:10px;display:grid}.tc-color-label{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.tc-color-swatch-wrap{width:32px;height:32px;position:relative}.tc-color-swatch-wrap--empty{opacity:1}.tc-color-swatch{border:2px solid var(--border-subtle);cursor:pointer;border-radius:6px;flex-shrink:0;width:32px;height:32px;padding:0}.tc-color-swatch--placeholder{background:var(--bg-inset);border:2px dashed var(--border-subtle);justify-content:center;align-items:center;display:flex}.tc-color-swatch--placeholder:after{content:"—";color:var(--text-faint2);font-size:.7rem}.tc-color-swatch::-webkit-color-swatch-wrapper{padding:0}.tc-color-swatch::-webkit-color-swatch{border:none;border-radius:4px}.tc-color-hex{font-family:monospace;font-size:.78rem}.tc-color-reset{white-space:nowrap;justify-self:end;font-size:.7rem}.tc-color-reset--hidden{visibility:hidden}.tc-select{background:var(--bg-inset);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);cursor:pointer;border-radius:6px;padding:6px 10px;font-size:.82rem}.tc-select:hover{border-color:var(--border-active)}.tc-radio-group{flex-wrap:wrap;gap:4px;display:flex}.tc-radio-group--vertical{flex-direction:column}.tc-radio-btn{border:1px solid var(--border-subtle);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:6px;align-items:center;padding:5px 10px;font-size:.78rem;transition:all .15s;display:inline-flex}.tc-radio-btn input{display:none}.tc-radio-btn:hover{border-color:var(--border-active);color:var(--text-primary)}.tc-radio-btn.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.tc-font-preview{background:var(--bg-inset);color:var(--text-secondary);border-radius:6px;margin-top:6px;padding:8px 10px;font-size:.85rem}.tc-sizing-preview{align-items:center;margin-top:8px;display:flex}.tc-radius-demo{background:var(--accent-primary);width:60px;height:40px;transition:border-radius .2s}.tc-presets-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:8px;display:grid}.tc-preset-btn{border:1px solid var(--border-subtle);cursor:pointer;color:var(--text-secondary);background:0 0;border-radius:8px;flex-direction:column;align-items:center;gap:6px;padding:8px 6px;transition:all .15s;display:flex}.tc-preset-btn:hover{border-color:var(--accent-primary);background:var(--bg-inset)}.tc-preset-swatch{border:1.5px solid;border-radius:6px;justify-content:center;align-items:center;gap:6px;width:100%;height:36px;display:flex;position:relative;overflow:hidden}.tc-preset-swatch-letter{z-index:1;font-size:1rem;font-weight:800}.tc-preset-swatch-bar{z-index:1;border-radius:2px;width:3px;height:18px}.tc-preset-swatch-text{z-index:1;opacity:.7;font-size:.7rem;font-weight:600}.tc-preset-name{white-space:nowrap;font-size:.7rem;font-weight:600}@media (width<=900px){.customizer-page{width:calc(100% + 28px);margin:-16px -14px}.customizer-layout{flex-direction:column}.customizer-controls{border-right:none;border-bottom:1px solid var(--border-subtle);width:100%;min-width:auto}.customizer-preview{height:auto;min-height:400px;position:static}}.season-selector-select option{background:#1e2440}*,:before,:after{box-sizing:border-box}body{margin:0;padding:0}
