/* VBA 2.42.0 — Coach Board */
.fs-coach{padding-bottom:30px}.fs-coach-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:6px 2px 14px;border-bottom:1px solid var(--edge)}.fs-coach-head h1{font:clamp(38px,5vw,62px)/.88 var(--display);margin:5px 0}.fs-coach-head p{font:8px var(--mono);letter-spacing:.11em;color:var(--muted)}.fs-coach-mode{text-align:right}.fs-coach-mode>span{display:block;font:800 9px var(--mono);letter-spacing:.12em;color:var(--fs-team)}.fs-coach-mode small{display:block;margin-top:3px;max-width:330px;font:8px/1.35 var(--mono);color:var(--muted)}
.fs-assist-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 2px;border-bottom:1px solid var(--edge)}.fs-assist-strip b{display:block;font:16px var(--display);color:var(--fs-team)}.fs-assist-strip span{display:block;font:8px/1.4 var(--mono);color:var(--muted)}
.fs-coach-board{margin-top:14px}.fs-court-wrap{position:relative}.fs-court-label{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:0 3px 8px}.fs-court-label b{font:22px var(--display)}.fs-court-label span{font:7px var(--mono);letter-spacing:.09em;color:var(--muted);text-align:right}.fs-court-surface{position:relative;aspect-ratio:4/3;max-height:690px;min-height:480px;border-radius:20px;background:url('/assets/franchise/coach/coach-board-halfcourt.webp') center/contain no-repeat,radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--fs-team) 12%,transparent),transparent 48%);overflow:hidden;filter:drop-shadow(0 24px 42px rgba(0,0,0,.28))}
.fs-court-token{position:absolute;z-index:4;width:118px;min-height:112px;transform:translate(-50%,-50%);border:0;background:transparent;color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;text-shadow:0 2px 8px #000}.fs-court-token[data-pos="PG"]{left:31.5%;top:78%}.fs-court-token[data-pos="SG"]{left:82.5%;top:55%}.fs-court-token[data-pos="SF"]{left:16%;top:55%}.fs-court-token[data-pos="PF"]{left:68.5%;top:78%}.fs-court-token[data-pos="C"]{left:49.5%;top:41%}.fs-court-face{width:70px;height:70px;border-radius:50%;overflow:hidden;border:3px solid color-mix(in srgb,var(--fs-team) 70%,#ffd24d);background:#0a1221;box-shadow:0 0 0 4px rgba(0,0,0,.38),0 0 24px color-mix(in srgb,var(--fs-team) 42%,transparent)}.fs-court-face img{width:100%;height:100%;object-fit:cover;object-position:center 16%}.fs-court-token b{font:17px var(--display);margin-top:3px}.fs-court-token small,.fs-court-token i{font:7px var(--mono);letter-spacing:.04em;color:#d9e1ef;font-style:normal}.fs-court-token i{color:#a9b5c5}.fs-court-token i.hot{color:#ff7a7a}.fs-court-token.empty span{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;border:2px dashed var(--muted);font:32px var(--display)}
.fs-bench{margin-top:4px;border-top:1px solid var(--edge);border-bottom:1px solid var(--edge);padding:11px 0}.fs-bench-head{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:0 2px 8px}.fs-bench-head b{font:20px var(--display)}.fs-bench-head span{font:7px var(--mono);letter-spacing:.1em;color:var(--muted)}.fs-bench-scroll{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding:2px 2px 8px;scrollbar-width:thin}.fs-bench-token{scroll-snap-align:start;flex:0 0 220px;min-height:76px;display:grid;grid-template-columns:52px 1fr;gap:8px;align-items:center;padding:8px;border:1px solid var(--edge);border-radius:12px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer}.fs-bench-token.selected{border-color:var(--fs-team);box-shadow:0 0 0 1px var(--fs-team),0 10px 28px color-mix(in srgb,var(--fs-team) 15%,transparent)}.fs-bench-face{width:50px;height:50px;border-radius:50%;overflow:hidden;background:var(--bg);grid-row:1/3}.fs-bench-face img{width:100%;height:100%;object-fit:cover;object-position:center 16%}.fs-bench-token b{display:block;font:15px var(--display)}.fs-bench-token small{display:block;font:7px var(--mono);color:var(--muted)}.fs-bench-token i{grid-column:2;font:800 7px var(--mono);font-style:normal;color:var(--fs-team)}
.fs-coach-call{padding-top:14px}.fs-coach-call>div:first-child{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:0 2px 10px}.fs-coach-call>div:first-child>b{font:10px var(--mono);color:var(--muted-2)}.fs-tactic-dock{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.fs-tactic-dock button{min-width:0;min-height:82px;border:1px solid var(--edge);border-radius:11px;background:var(--surface);color:var(--text);overflow:hidden;cursor:pointer;padding:0 4px 6px}.fs-tactic-dock b{display:block;font:7px var(--mono);letter-spacing:.035em}.fs-tactic-art{display:block;height:58px;margin:-2px -5px 1px;background-image:url('/assets/franchise/icons/coach-tactics-sheet.webp');background-size:300% 300%;background-repeat:no-repeat}.fs-tactic-dock .i1 .fs-tactic-art{background-position:0 0}.fs-tactic-dock .i2 .fs-tactic-art{background-position:50% 0}.fs-tactic-dock .i3 .fs-tactic-art{background-position:100% 0}.fs-tactic-dock .i5 .fs-tactic-art{background-position:50% 50%}.fs-tactic-dock .i6 .fs-tactic-art{background-position:100% 50%}.fs-tactic-dock .i7 .fs-tactic-art{background-position:0 100%}.fs-tactic-dock .i8 .fs-tactic-art{background-position:50% 100%}.fs-tactic-dock .i9 .fs-tactic-art{background-position:100% 100%}
.fs-expert-bar{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:54px;margin-top:12px;padding:0 14px;border:1px solid var(--edge);border-radius:10px;background:transparent;color:var(--text);cursor:pointer}.fs-expert-bar b{font:17px var(--display)}.fs-expert-bar span{font:7px var(--mono);color:var(--muted)}.fs-coach-lock{position:sticky;z-index:20;bottom:12px;display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:14px;padding:8px;border:1px solid var(--edge);border-radius:14px;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(18px);box-shadow:0 20px 55px rgba(0,0,0,.3)}.fs-coach-lock>span{margin-right:auto;padding-left:8px;font:800 8px var(--mono);letter-spacing:.1em;color:var(--muted)}
.fs-sheet-backdrop{display:none;position:fixed;inset:0;z-index:1390;background:rgba(0,0,0,.6);backdrop-filter:blur(4px)}.fs-sheet-backdrop.open{display:block}.fs-bottom-sheet{position:fixed;z-index:1400;left:50%;bottom:0;width:min(760px,100%);max-height:min(80vh,820px);overflow:auto;transform:translate(-50%,110%);transition:transform .22s ease;border:1px solid var(--edge);border-bottom:0;border-radius:22px 22px 0 0;background:var(--bg-2);box-shadow:0 -28px 90px rgba(0,0,0,.5);padding:8px 16px calc(18px + env(safe-area-inset-bottom))}.fs-bottom-sheet.open{transform:translate(-50%,0)}.fs-sheet-grab{width:48px;height:4px;border-radius:99px;background:var(--edge);margin:0 auto 8px}.fs-bottom-sheet>header{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:11px;border-bottom:1px solid var(--edge)}.fs-bottom-sheet header span{font:7px var(--mono);letter-spacing:.13em;color:var(--muted)}.fs-bottom-sheet h2{font:31px var(--display);margin:2px 0 0}.fs-bottom-sheet header>button{width:44px;height:44px;border:1px solid var(--edge);border-radius:12px;background:var(--surface);color:var(--text);font-size:26px;cursor:pointer}.fs-sheet-body{padding-top:12px}.fs-player-focus{display:flex;align-items:center;gap:12px;margin-bottom:10px}.fs-player-frame{position:relative;width:94px;height:116px;flex:none;overflow:hidden}.fs-player-frame .frame{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:2;pointer-events:none}.fs-player-frame .portrait{position:absolute;z-index:1;left:20%;right:20%;top:15%;bottom:22%;overflow:hidden}.fs-player-frame .portrait img{width:100%;height:100%;object-fit:cover;object-position:center 15%}.fs-player-focus>div:last-child b{display:block;font:24px var(--display)}.fs-player-focus>div:last-child span{display:block;font:8px/1.5 var(--mono);color:var(--muted)}.fs-player-sheet>label,.fs-sheet-grid label,.fs-training-list label{display:flex;flex-direction:column;gap:5px;font:800 7px var(--mono);letter-spacing:.08em;color:var(--muted)}.fs-player-sheet input[type="range"]{width:100%;accent-color:var(--fs-team)}.fs-sheet-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.fs-sheet-grid select,.fs-training-list select{min-height:44px;border:1px solid var(--edge);border-radius:9px;background:var(--surface);color:var(--text);padding:0 9px;font:9px var(--mono)}.fs-role-actions{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:6px;margin-top:12px}.fs-role-actions button{min-height:44px;border:1px solid var(--edge);border-radius:9px;background:var(--surface);color:var(--text);font:800 8px var(--mono);cursor:pointer}.fs-role-actions button.active{background:color-mix(in srgb,var(--fs-team) 20%,var(--surface));border-color:var(--fs-team)}
.fs-projection-note{font:9px/1.55 var(--mono);color:var(--muted);margin-bottom:10px}.fs-choice-stack{display:grid;gap:7px}.fs-choice-stack button{min-height:58px;display:flex;justify-content:space-between;align-items:center;padding:0 14px;border:1px solid var(--edge);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer}.fs-choice-stack button.active{border-color:var(--fs-team);background:color-mix(in srgb,var(--fs-team) 15%,var(--surface))}.fs-choice-stack b{font:19px var(--display)}.fs-choice-stack span{font:8px var(--mono);color:var(--muted)}.fs-roster-lines{display:flex;flex-direction:column}.fs-roster-lines button{min-height:52px;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;border:0;border-bottom:1px solid var(--edge);background:transparent;color:var(--text);text-align:left;cursor:pointer}.fs-roster-lines b{font:16px var(--display)}.fs-roster-lines span{font:7px var(--mono);color:var(--muted)}.fs-roster-lines .mini{width:38px;height:38px;border-radius:50%;overflow:hidden}.fs-roster-lines .mini img{width:100%;height:100%;object-fit:cover}.fs-training-budget{font:8px var(--mono);color:var(--muted);padding-bottom:9px;border-bottom:1px solid var(--edge)}.fs-training-list>div{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px;align-items:end;padding:9px 0;border-bottom:1px solid var(--edge)}.fs-training-list b{font:16px var(--display);align-self:center}.fs-training-list+.fs-primary-action{width:100%;margin-top:12px}
@media(max-width:720px){.fs-coach-head{align-items:flex-start}.fs-coach-mode{max-width:120px}.fs-assist-strip{align-items:flex-start;flex-direction:column}.fs-assist-strip button{width:100%}.fs-court-surface{min-height:0;aspect-ratio:4/3}.fs-court-token{width:84px;min-height:94px}.fs-court-face{width:54px;height:54px}.fs-court-token b{font-size:13px}.fs-court-token small,.fs-court-token i{font-size:6px}.fs-bench-token{flex-basis:190px}.fs-tactic-dock{grid-template-columns:repeat(4,1fr)}.fs-coach-call>div:first-child{align-items:flex-start;flex-direction:column}.fs-expert-bar{align-items:flex-start;flex-direction:column;padding:10px}.fs-coach-lock{bottom:calc(var(--fs-nav-h) + env(safe-area-inset-bottom) + 8px)}.fs-sheet-grid{grid-template-columns:1fr}.fs-role-actions{grid-template-columns:1fr 1fr}.fs-role-actions button:last-child{grid-column:1/-1}.fs-training-list>div{grid-template-columns:1fr 1fr}.fs-training-list b{grid-column:1/-1}}
@media(max-width:360px){.fs-coach-head h1{font-size:36px}.fs-coach-mode small{display:none}.fs-court-token{width:74px}.fs-court-face{width:48px;height:48px}.fs-court-token[data-pos="PG"]{left:31%;top:78%}.fs-court-token[data-pos="SG"]{left:83%;top:55%}.fs-court-token[data-pos="SF"]{left:16%;top:55%}.fs-court-token[data-pos="PF"]{left:69%;top:78%}.fs-tactic-dock button{min-height:76px}.fs-bench-token{flex-basis:174px}}

/* 2.43.0 Coach Board 2.0 — broadcast x command center */
.fs-coach-head-actions{display:flex;align-items:flex-end;gap:10px}.fs-coach-stage{position:relative;margin-top:10px;padding:10px;border:1px solid var(--edge);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--fs-team) 6%,var(--surface)),var(--bg-2));overflow:hidden}.fs-assistant-coach{display:grid;grid-template-columns:58px 1fr;gap:10px;align-items:center;padding:8px 10px 10px;border-bottom:1px solid var(--edge)}.fs-assistant-coach img{width:58px;height:68px;object-fit:contain;object-position:center bottom}.fs-assistant-coach span{display:block;font:800 7px var(--mono);letter-spacing:.12em;color:var(--fs-team)}.fs-assistant-coach b{display:block;margin-top:2px;font:18px var(--display)}.fs-assistant-coach small{display:block;margin-top:2px;color:var(--muted);font:7px/1.35 var(--mono)}
.fs-court-mode .fs-court-overlay{position:absolute;inset:5%;z-index:2;pointer-events:none;opacity:0;transition:opacity .16s ease;background-repeat:no-repeat}.fs-court-mode.fs-mode-attack .fs-court-overlay{opacity:.8;background:radial-gradient(circle at 50% 34%,color-mix(in srgb,var(--fs-team) 32%,transparent) 0 13%,transparent 14%),linear-gradient(90deg,transparent 15%,color-mix(in srgb,var(--fs-team) 16%,transparent) 15% 18%,transparent 18% 82%,color-mix(in srgb,var(--fs-team) 16%,transparent) 82% 85%,transparent 85%)}.fs-court-mode.fs-mode-defense .fs-court-overlay{opacity:.9;background:repeating-linear-gradient(135deg,transparent 0 35px,color-mix(in srgb,#4fc3ff 16%,transparent) 36px 38px)}.fs-court-mode.fs-mode-matchups .fs-court-overlay{opacity:.8;background:linear-gradient(72deg,transparent 48%,color-mix(in srgb,var(--fs-team) 28%,transparent) 49% 51%,transparent 52%),linear-gradient(108deg,transparent 48%,color-mix(in srgb,var(--fs-team) 24%,transparent) 49% 51%,transparent 52%)}.fs-court-mode.fs-mode-pace .fs-court-overlay{opacity:.7;background:linear-gradient(90deg,transparent 8%,color-mix(in srgb,var(--fs-team) 26%,transparent) 50%,transparent 92%)}
.fs-court-token.fs-player-selected{z-index:8;transform:translate(-50%,-50%) scale(1.08)}.fs-court-token.fs-player-selected .fs-court-face{box-shadow:0 0 0 5px color-mix(in srgb,var(--fs-team) 55%,#fff),0 0 42px color-mix(in srgb,var(--fs-team) 68%,transparent)}.fs-coach-stage:has(.fs-player-selected) .fs-court-token:not(.fs-player-selected){opacity:.42}.fs-game-plan-label{padding:0 2px 6px}.fs-game-plan-label span{font:800 8px var(--mono);letter-spacing:.14em;color:var(--fs-team)}
@media(max-width:720px){.fs-coach-head-actions{align-items:flex-end;flex-direction:column}.fs-coach-head-actions>.fs-secondary-action{min-height:38px}.fs-coach-stage{padding:6px}.fs-assistant-coach{grid-template-columns:48px 1fr;padding:6px}.fs-assistant-coach img{width:48px;height:58px}.fs-assistant-coach b{font-size:15px}.fs-assistant-coach small{font-size:6.5px}}

/* 2.47.0 Development Center — stat-backed progression + Franchise Star */
.fs-development-center{margin:12px 0;padding:14px;border:1px solid var(--edge);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--fs-team) 8%,var(--surface)),var(--bg-2))}.fs-dev-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.fs-dev-head h2{margin:3px 0 2px;font:31px var(--display)}.fs-dev-head p{max-width:720px;margin:0;color:var(--muted);font:8px/1.55 var(--mono)}.fs-coach-dev-score{min-width:170px;padding:10px 12px;border:1px solid var(--edge);border-radius:12px;background:var(--surface);text-align:right}.fs-coach-dev-score span,.fs-coach-dev-score b,.fs-coach-dev-score strong{display:block}.fs-coach-dev-score span{font:7px var(--mono);letter-spacing:.12em;color:var(--muted)}.fs-coach-dev-score b{margin-top:3px;font:17px var(--display)}.fs-coach-dev-score strong{margin-top:3px;font:800 12px var(--mono);color:var(--fs-team)}.fs-dev-star-zone{margin-top:12px}.fs-dev-empty{padding:18px;border:1px dashed color-mix(in srgb,var(--fs-team) 55%,var(--edge));border-radius:14px;text-align:center;background:color-mix(in srgb,var(--fs-team) 5%,transparent)}.fs-dev-empty b{display:block;font:20px var(--display)}.fs-dev-empty span{display:block;margin-top:4px;font:8px/1.45 var(--mono);color:var(--muted)}.fs-dev-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.fs-dev-card{padding:10px;border:1px solid var(--edge);border-radius:12px;background:var(--surface);cursor:pointer;transition:border-color .15s ease,transform .15s ease}.fs-dev-card:hover{border-color:color-mix(in srgb,var(--fs-team) 65%,var(--edge));transform:translateY(-1px)}.fs-dev-card.star{border-color:var(--fs-team);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fs-team) 22%,transparent);background:color-mix(in srgb,var(--fs-team) 8%,var(--surface))}.fs-dev-card-top{display:grid;grid-template-columns:44px 1fr auto;gap:9px;align-items:center}.fs-dev-face{width:44px;height:44px;border-radius:50%;overflow:hidden;background:var(--bg);display:grid;place-items:center}.fs-dev-face img{width:100%;height:100%;object-fit:cover}.fs-dev-card-top small{display:block;font:700 6.5px var(--mono);letter-spacing:.1em;color:var(--fs-team)}.fs-dev-card-top b{display:block;font:17px var(--display)}.fs-dev-card-top em{display:block;font:7px var(--mono);font-style:normal;color:var(--muted)}.fs-dev-pick{min-height:34px;padding:0 9px;border:1px solid var(--fs-team);border-radius:8px;background:transparent;color:var(--text);font:800 7px var(--mono);cursor:pointer}.fs-dev-meter{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;margin-top:9px}.fs-dev-meter i,.fs-dev-sheet-meter i{height:7px;border-radius:99px;background:var(--bg);overflow:hidden;border:1px solid var(--edge)}.fs-dev-meter i em,.fs-dev-sheet-meter i em{display:block;height:100%;background:var(--fs-team);border-radius:99px}.fs-dev-meter span{font:800 7px var(--mono);color:var(--muted)}.fs-dev-facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px;font:6.5px var(--mono);color:var(--muted)}.fs-dev-facts span{padding-right:8px;border-right:1px solid var(--edge)}.fs-dev-facts span:last-child{border-right:0}.fs-dev-facts b{color:var(--text)}.fs-dev-rule{margin-top:10px;padding-top:9px;border-top:1px solid var(--edge);font:7px/1.45 var(--mono);color:var(--muted)}.fs-dev-rule b{color:var(--text)}.fs-dev-sheet-meter{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;margin:12px 0}.fs-dev-sheet-meter i{height:10px}.fs-dev-sheet-meter b{font:18px var(--display)}.fs-dev-sheet-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.fs-dev-sheet-grid span{padding:9px;border:1px solid var(--edge);border-radius:9px;background:var(--surface);font:6.5px var(--mono);color:var(--muted)}.fs-dev-sheet-grid b{display:block;margin-bottom:2px;font:16px var(--display);color:var(--text)}.fs-dev-evidence{display:grid;grid-template-columns:auto 1fr;gap:7px 12px;margin-top:10px;padding:10px;border:1px solid var(--edge);border-radius:10px}.fs-dev-evidence b{font:7px var(--mono);color:var(--fs-team)}.fs-dev-evidence span{font:8px var(--mono);color:var(--muted)}
@media(max-width:720px){.fs-dev-head{flex-direction:column}.fs-coach-dev-score{width:100%;text-align:left}.fs-dev-grid{grid-template-columns:1fr}.fs-dev-card-top{grid-template-columns:42px 1fr auto}.fs-dev-sheet-grid{grid-template-columns:repeat(2,1fr)}}
.fs-dev-history{display:flex;flex-direction:column;gap:5px;margin-top:10px;padding:10px;border:1px solid var(--edge);border-radius:10px;background:color-mix(in srgb,var(--surface) 82%,transparent)}.fs-dev-history>b{font:7px var(--mono);letter-spacing:.1em;color:var(--fs-team)}.fs-dev-history>span{font:8px/1.4 var(--mono);color:var(--muted)}.fs-dev-history strong{color:var(--text)}
