:root{--ws-accent:#5de1be;--ws-border:#2b454d;--ws-muted:#afc2ca}
.app{background:rgba(9,20,29,.92)}
.topbar{background:#0d1c27!important;border-bottom:1px solid var(--ws-border)}
.season-scope{background:#112731;padding:10px 24px}.season-scope small{display:none}
.content{padding-bottom:110px!important}.content .sec{max-width:1040px;margin:auto}
#sec-dashboard #dash-greeting,#sec-dashboard #dash-sub,#sec-dashboard .dashboard-hero,#sec-dashboard .coach-shortcut{display:none}
.ws-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:8px 0 24px}.ws-intro h1{font-size:clamp(26px,4vw,38px);letter-spacing:-.04em;margin:9px 0}.ws-intro p,.ws-match p{color:var(--ws-muted);line-height:1.6;margin:8px 0 20px}
.ws-eyebrow{font-size:10px;font-weight:750;letter-spacing:.13em;color:var(--ws-accent)}.ws-team-count{white-space:nowrap;border:1px solid var(--ws-border);border-radius:30px;padding:10px 15px;font-size:12px;color:#d6e4ea}
.ws-home-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:20px;margin-bottom:24px}.ws-match,.ws-tasks{padding:26px;border:1px solid var(--ws-border);border-radius:20px;background:#10232e;min-width:0}.ws-match{background:radial-gradient(ellipse at top right,#235b50,transparent 75%),#10232e}.ws-match h2{font-size:clamp(25px,3vw,34px);margin:20px 0 6px;overflow-wrap:anywhere}.ws-tasks h2{font-size:17px;margin:0 0 14px}.ws-action{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid var(--ws-border);color:#edf6f5;padding:15px 0;text-align:left;font:inherit;cursor:pointer;min-height:48px}.ws-action:last-child{border-bottom:0}.ws-action strong{display:flex;justify-content:space-between;gap:12px;font-size:14px}.ws-action small{display:block;color:var(--ws-muted);margin-top:6px;font-size:12px;line-height:1.5}.ws-action:hover{color:var(--ws-accent)}
.ws-match-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.ws-attendance{display:flex;flex-wrap:wrap;gap:18px;margin-top:20px;font-size:12px;color:var(--ws-muted)}.ws-attendance b{display:block;font-size:23px;color:#edf6f5;margin-bottom:5px}
.bottomnav{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible!important;background:#0d1c27!important;border:1px solid var(--ws-border);border-radius:20px;padding:7px!important}.bottomnav .nav-item{min-width:0!important;width:100%;border:0;background:transparent;color:var(--ws-muted);font:inherit;cursor:pointer;border-radius:13px;padding:10px 2px!important}.bottomnav .nav-item.active{background:#214c46!important;color:#9cf5d6!important}.bottomnav .nav-icon{font-size:19px}.bottomnav .nav-label{font-size:11px}
button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #a4efd9;outline-offset:3px}.cx-primary,.coach-launch{background:#65e1b8!important;color:#09271f!important;border-color:#65e1b8!important;min-height:44px}.cx-secondary{min-height:44px}.cx-head h1{font-size:27px}.cx-head{margin-bottom:18px}.cx-card{background:#10232e;border-color:var(--ws-border)}.cx-tabs{gap:6px}.cx-tabs button{border-radius:9px}.cx-tabs button[aria-selected=true]{background:#24584c;color:#c8ffee}.cx-row{padding-top:14px;padding-bottom:14px}.cx-avatar{border-radius:12px}.stat-card{background:#10232e!important;border:1px solid var(--ws-border)!important;border-radius:16px!important}.ws-menu{width:min(840px,94vw)}.ws-menu h2{margin:6px 0}.ws-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.ws-menu h3{font-size:12px;color:var(--ws-accent);margin:12px 0}
.lf-clock{font-size:clamp(56px,8vw,88px)!important;letter-spacing:-.04em;font-variant-numeric:tabular-nums;text-align:center;background:#0a1922;border:1px solid var(--ws-border);border-radius:16px;padding:24px 12px;margin:20px 0 12px}#lf-clock-status{text-align:center;font-weight:700}#lf-field label{min-height:52px;padding:12px;border:1px solid var(--ws-border);border-radius:10px;background:#132c36}#lf-field label:has(input:checked){background:#215044;border-color:#69dcb5}#lf-field input{width:20px;height:20px;accent-color:#65e1b8}#lf-cue{line-height:1.6;font-size:14px}#lf-lineup{width:100%;font-size:16px}.ws-live-tools{margin-top:16px;border-top:1px solid var(--ws-border);padding-top:16px}.ws-live-tools summary{cursor:pointer;color:var(--ws-muted);padding:8px 0;min-height:40px}
@media(max-width:650px){.content{padding:18px 14px 115px!important}.ws-home-grid{grid-template-columns:1fr;gap:14px}.ws-intro{margin:4px 0 20px}.ws-intro p{font-size:12px}.ws-team-count{padding:8px 10px;font-size:11px}.ws-match,.ws-tasks{padding:20px;border-radius:16px}.ws-match-actions>*{flex:1 1 100%;min-height:48px}.ws-menu-grid{grid-template-columns:1fr;gap:12px}.bottomnav{width:calc(100% - 20px)!important;bottom:calc(8px + env(safe-area-inset-bottom))!important;left:50%!important;transform:translateX(-50%)!important}.bottomnav .nav-label{font-size:10px}.cx-head{display:block}.cx-head p{font-size:12px}.cx-badge{display:inline-block;margin-top:10px}.cx-grid{grid-template-columns:1fr!important}.cx-card{padding:18px}.cx-actions>button{min-height:48px}#lf-start,#lf-pause{flex:1}#lf-finish{width:100%}.season-scope{padding:8px 14px}}

.cx-plan-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.cx-plan-fields svg{max-height:340px}.cx-plan-table summary{cursor:pointer;padding:14px 0;color:#afc2ca}.blok-field-preview{margin:12px auto;max-width:260px}.cx-plan-fields .chip{color:#e4f0ed}.cx-plan-fields [style*="var(--text3)"]{color:#b8cbd0!important}@media(max-width:560px){.cx-plan-fields{grid-template-columns:1fr}.cx-plan-fields svg{max-height:370px}}

/* Match planning: one calm, readable field with explicit substitutions. */
.cx-plan-fields{display:block}.pitch-tabs{display:flex;gap:6px;overflow:auto;padding:4px 1px 12px;scrollbar-width:thin}.pitch-tabs button{flex:0 0 auto;min-height:42px;padding:9px 15px;border:1px solid #314852;border-radius:12px;background:#122733;color:#bacdd5;font:inherit;font-size:13px;cursor:pointer}.pitch-tabs button[aria-selected=true]{background:#79dfbd;border-color:#79dfbd;color:#0e3027;font-weight:700}.pitch-card{overflow:hidden;border:1px solid #314852;border-radius:18px;background:#10252e}.pitch-card header{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;font-size:14px}.pitch-card header span{font-size:12px;color:#b1c7ce}.pitch-card svg{display:block;width:calc(100% - 20px);margin:0 10px;max-height:470px!important}.pitch-player{color:#133b31}.pitch-player circle{fill:#e8f7f0;stroke:#b4dfcc;stroke-width:1.5}.pitch-player rect{fill:#102d28;fill-opacity:.92}.pitch-player text{fill:#fff;font-size:10px;font-weight:600;font-family:Inter,system-ui,sans-serif}.pitch-keeper circle{fill:#f2d292;stroke:#e5bb69}.pitch-bench{padding:16px 18px}.pitch-bench>span{display:block;font-size:12px;color:#b1c7ce;margin-bottom:9px}.pitch-bench>div{display:flex;flex-wrap:wrap;gap:6px}.pitch-chip{padding:6px 10px;border-radius:8px;background:#213b44;color:#e5efef;font-size:12px}.pitch-muted{color:#a9c1c9;font-size:12px;line-height:1.7}.pitch-roster{border-top:1px solid #29414b;padding:12px 18px}.pitch-roster summary{cursor:pointer;font-size:12px;color:#adc4cd;padding:4px 0}.pitch-roster>div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;font-size:12px}.pitch-roster>div span{color:#acc5cc}.pitch-changes{margin-top:12px;padding:18px;border-radius:16px;background:#152d36;border:1px solid #29454e}.pitch-changes h3{font-size:14px;margin:0 0 12px}.pitch-change-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pitch-change-grid p{font-size:13px;line-height:1.8;margin-top:6px}.pitch-in,.pitch-out{font-size:12px;font-weight:700}.pitch-in{color:#85e3c0}.pitch-out{color:#f1be9d}.cx-warning{border-radius:10px;background:#29352f;border-color:#4b5945;font-size:12px}.bottomnav .nav-icon svg{width:22px;height:22px;display:block;margin:0 auto 5px}.blok-field-preview{max-width:360px}.cx-plan-fields .pitch-card [style]{color:inherit}.cx-plan-table{margin-top:12px}@media(prefers-reduced-motion:reduce){.sec{animation:none!important;transition:none!important}}

.pitch-player text{font-size:13px}.cx-plan-fields .pitch-card header{margin-bottom:0}.pitch-roster{margin-top:0}

.player-card[data-profile-id]{cursor:pointer}.player-profile-button{border:0;background:transparent;color:inherit;text-align:left;font:inherit;font-weight:700;padding:8px 0;cursor:pointer}.player-profile-button span{color:#79dfbd;margin-left:8px}.player-card[data-profile-id]:hover{border-color:#79dfbd}
