/* Opponents share one stamina pool, visualized on every opponent portrait. */
.v2-defender-energy{position:absolute!important;z-index:8;top:4px;right:3px;display:block!important;flex:0 0 32px;width:32px!important;min-width:32px!important;max-width:32px!important;height:9px;padding:1px;border:1px solid #f4dfb7;border-radius:2px;background:linear-gradient(90deg,var(--opponent-energy-color) 0 calc(var(--opponent-energy)*1%),rgba(25,10,8,.58) calc(var(--opponent-energy)*1%) 100%);background-clip:content-box;box-sizing:border-box;box-shadow:0 1px 3px rgba(0,0,0,.68)}
.v2-defender-energy::after{content:"";position:absolute;right:-4px;top:2px;width:3px;height:4px;border:1px solid #f4dfb7;border-left:0;border-radius:0 1px 1px 0}
.v2-live-player{cursor:pointer}
.v2-live-player.selected{border-color:#ffd36d;box-shadow:0 0 0 4px #8b2c23,0 0 28px #ffd36d}
.v2-live-player span em{display:block;color:#e7bd62;font:700 7px var(--font-mono);font-style:normal}
.v2-rotation-desk{margin-top:9px;border:2px solid #574936;background:#efe0c1}
.v2-rotation-title{display:flex;justify-content:space-between;align-items:center;padding:7px 9px;border-bottom:1px solid #796950;background:#2d1e16;color:#fff}
.v2-rotation-title small{color:#e7bd62;font:800 7px var(--font-mono)}
.v2-rotation-title b{font:700 17px 'Teko',sans-serif}
.v2-rotation-list{display:grid;gap:5px;max-height:235px;padding:6px;overflow-y:auto}
.v2-rotation-player{display:grid;grid-template-columns:48px 1fr;gap:7px;align-items:center;min-height:60px;padding:4px;border:1px solid #81715a;background:#f7e9ca;color:#21170f;text-align:left;cursor:pointer}
.v2-rotation-player:hover,.v2-rotation-player.selected{border-color:#8b2c23;background:#fff4d9}
.v2-rotation-player.fouled-out{filter:grayscale(1);opacity:.55}
.v2-rotation-art{height:52px;background-position:center bottom;background-size:contain;background-repeat:no-repeat}
.v2-rotation-player small,.v2-rotation-player b,.v2-rotation-player span,.v2-rotation-player em{display:block}
.v2-rotation-player small{color:#8b2c23;font:800 7px var(--font-mono)}
.v2-rotation-player b{font:700 17px 'Teko',sans-serif}
.v2-rotation-player span,.v2-rotation-player em{color:#675b4b;font-size:8px;font-style:normal}
.v2-rotation-player em{margin-top:2px;font-weight:800}
.v2-coach-console .v2-console-grid{grid-template-columns:repeat(3,1fr)}
@media(max-width:620px){.v2-coach-console .v2-console-grid{grid-template-columns:1fr}.v2-rotation-list{max-height:190px}}
.v2-adjustment-count{margin-top:8px;padding-top:7px;border-top:1px solid #9b886c;color:#8b2c23;font:800 8px var(--font-mono);letter-spacing:1px}.v2-scout-live.adjusted{border-left-color:#d65448;animation:v2CoachAlert .45s ease}.v2-scout-live em{display:block;margin-top:7px;padding:6px;border:1px solid rgba(230,91,75,.6);background:rgba(151,43,34,.28);color:#ffd5c8;font:800 8px var(--font-mono);font-style:normal}.v2-coach-console button:disabled,.v2-live-player:disabled{cursor:not-allowed;filter:grayscale(.7);opacity:.5}@keyframes v2CoachAlert{0%{transform:translateX(8px);opacity:.35}100%{transform:none;opacity:1}}
.v2-network-map .v2-map-column{grid-template-rows:repeat(3,minmax(108px,auto))}.v2-network-map .v2-map-column.future{opacity:.62;filter:saturate(.55)}.v2-network-map .v2-map-column.active .v2-node:not(:disabled){box-shadow:0 5px 0 #5b211b,0 10px 22px rgba(57,27,18,.18);transform:translateY(-2px)}.v2-network-map .v2-node:not(:disabled):hover{transform:translateY(-6px);box-shadow:0 8px 0 #5b211b,0 16px 30px rgba(57,27,18,.24)}
.v2-boss-rule{display:grid;grid-template-columns:76px 1fr;gap:16px;align-items:center;margin:0 0 18px;padding:15px 18px;border:2px solid #e5b947;background:linear-gradient(115deg,#26130f 0%,#5e211a 72%,#8e2d22 100%);color:#fff;box-shadow:7px 7px 0 rgba(40,22,14,.22)}.v2-boss-icon{display:grid;place-items:center;width:64px;height:64px;border:2px solid #e5b947;border-radius:50%;color:#e5b947;font-size:34px}.v2-boss-rule small,.v2-boss-rule b,.v2-boss-rule span{display:block}.v2-boss-rule small{color:#e5b947;font:800 8px var(--font-mono);letter-spacing:1.4px}.v2-boss-rule b{margin:3px 0;font:700 29px 'Teko',sans-serif}.v2-boss-rule span{color:#eadbc2;font-size:12px}
.v2-meta-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:15px auto 0;max-width:930px;text-align:left}.v2-meta-summary>div{padding:11px 13px;border:1px solid #927f60;background:rgba(255,248,224,.55)}.v2-meta-summary small,.v2-meta-summary b{display:block}.v2-meta-summary small{color:#8b2c23;font:800 8px var(--font-mono);letter-spacing:1px}.v2-meta-summary b{margin-top:5px;font-size:12px}.v2-meta-summary .v2-achievement-row{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.v2-achievement-row span{padding:7px 10px;border:1px solid #958871;color:#817764;font:800 8px var(--font-mono);letter-spacing:.7px}.v2-achievement-row span.earned{border-color:#a12f25;background:#a12f25;color:#fff;box-shadow:3px 3px 0 #e2b84a}
@media(max-width:720px){.v2-boss-rule{grid-template-columns:50px 1fr}.v2-boss-icon{width:44px;height:44px;font-size:24px}.v2-meta-summary{grid-template-columns:1fr}.v2-meta-summary .v2-achievement-row{grid-column:auto}}

/* Live tactical broadcast */
.v2-court-live.has-tactical-board{min-height:470px;background-position:center 38%;isolation:isolate}
.v2-court-live.has-tactical-board:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,11,10,.38),transparent 25%,transparent 75%,rgba(7,11,10,.38)),linear-gradient(0deg,rgba(14,9,5,.38),transparent 44%);pointer-events:none}
.v2-tactical-board{position:absolute;inset:0;overflow:hidden;color:#fff;--cyan:#57d8e8;--red:#e45c4e;--gold:#efc254}
.v2-board-head{position:absolute;z-index:8;left:12px;right:12px;top:10px;display:flex;justify-content:space-between;align-items:center;padding:7px 10px;border:1px solid rgba(239,194,84,.62);background:rgba(16,11,8,.78);backdrop-filter:blur(4px);font:800 8px var(--font-mono);letter-spacing:1px}.v2-board-head b{color:var(--gold);font-size:9px}.v2-board-head i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 9px var(--cyan)}.v2-board-head span:last-child i{background:var(--red);box-shadow:0 0 9px var(--red)}
.v2-play-routes{position:absolute;z-index:2;inset:38px 0 0;width:100%;height:calc(100% - 38px);pointer-events:none}.v2-play-routes path{fill:none;stroke-linecap:round;stroke-linejoin:round}.v2-play-routes .route{stroke:rgba(87,216,232,.86);stroke-width:5;stroke-dasharray:13 14;opacity:.18}.v2-play-routes .screen{stroke:var(--gold);stroke-width:9;opacity:.14}.v2-play-routes .pass{stroke:#fff;stroke-width:3;stroke-dasharray:7 12;opacity:0}.v2-tactical-board.create .route,.v2-tactical-board.finish .route{opacity:.9;animation:v2RouteDraw 1.05s linear infinite}.v2-tactical-board.create .screen{opacity:.9;animation:v2ScreenPulse .75s ease-in-out infinite alternate}.v2-tactical-board.finish .pass{opacity:.82;animation:v2PassLine .55s linear infinite}.v2-tactical-board.plan-pace .r2,.v2-tactical-board.plan-paint .r1{stroke:var(--gold)}.v2-tactical-board.plan-motion .route{stroke-width:6}
.v2-shot-clock{position:absolute;z-index:7;right:14px;top:51px;width:62px;padding:5px;border:1px solid #a99167;background:rgba(24,14,10,.88);text-align:center}.v2-shot-clock small,.v2-shot-clock b{display:block}.v2-shot-clock small{color:#c8b790;font:700 6px var(--font-mono)}.v2-shot-clock b{color:#ff6656;font:700 24px 'Teko',sans-serif;line-height:1}
.v2-possession-caption{position:absolute;z-index:7;left:14px;top:52px;padding:7px 9px;border-left:4px solid var(--gold);background:rgba(18,12,9,.82);backdrop-filter:blur(3px)}.v2-possession-caption small,.v2-possession-caption b{display:block}.v2-possession-caption small{color:var(--gold);font:800 7px var(--font-mono);letter-spacing:1px}.v2-possession-caption b{margin-top:2px;font:700 18px 'Teko',sans-serif}
.v2-tactic-player,.v2-defender{position:absolute;z-index:5;transform:translate(-50%,-50%);transition:left .75s cubic-bezier(.22,.8,.2,1),top .75s cubic-bezier(.22,.8,.2,1),transform .25s,filter .25s}.v2-tactic-player{width:62px;height:62px;padding:0;border:2px solid var(--cyan);border-radius:50%;background:#09252a;color:#fff;box-shadow:0 0 0 4px rgba(4,22,25,.72),0 0 20px rgba(87,216,232,.55);cursor:pointer}.v2-tactic-player:hover,.v2-tactic-player.selected{transform:translate(-50%,-50%) scale(1.12);border-color:var(--gold);box-shadow:0 0 0 4px #6e261f,0 0 26px var(--gold)}.v2-token-photo{position:absolute;inset:3px;border-radius:50%;background-size:130%;background-position:center 18%;background-repeat:no-repeat;filter:saturate(.85)}.v2-tactic-player b{position:absolute;z-index:2;left:-5px;top:-8px;padding:2px 5px;border:1px solid var(--cyan);border-radius:3px;background:#092126;color:#fff;font:800 7px var(--font-mono)}.v2-tactic-player small{position:absolute;z-index:3;left:50%;bottom:-20px;max-width:86px;padding:2px 5px;transform:translateX(-50%);background:rgba(13,9,6,.88);font:700 8px var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-tactic-player em{position:absolute;z-index:3;right:-12px;top:-7px;padding:2px 4px;border-radius:8px;background:#d9ae46;color:#24150e;font:800 6px var(--font-mono);font-style:normal}
.v2-defender{display:grid;place-items:center;width:43px;height:43px;border:3px solid var(--red);border-radius:50%;background:rgba(71,17,14,.82);box-shadow:0 0 15px rgba(228,92,78,.5)}.v2-defender i{font:800 10px var(--font-mono);font-style:normal}.v2-defender:after{content:'';position:absolute;inset:-8px;border:1px dashed rgba(255,115,99,.58);border-radius:50%;animation:v2DefenseRead 1.2s ease-in-out infinite alternate}
.v2-token-photo.is-fallback,.v2-defender-avatar{position:absolute;inset:4px;border-radius:50%;overflow:hidden;background:linear-gradient(145deg,#123842,#071a20 72%);box-shadow:inset 0 0 0 1px rgba(196,244,255,.26)}
.v2-token-photo.is-fallback:before,.v2-defender-avatar:before{content:'';position:absolute;left:50%;top:16%;width:31%;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:#d8c2a5;box-shadow:0 1px 0 rgba(0,0,0,.3)}
.v2-token-photo.is-fallback:after,.v2-defender-avatar:after{content:'';position:absolute;left:50%;bottom:-12%;width:76%;height:58%;transform:translateX(-50%);border-radius:50% 50% 12% 12%;background:linear-gradient(90deg,#1b7f8d,#59cddd 50%,#1b7f8d);box-shadow:inset 0 4px 0 rgba(255,255,255,.18)}
.v2-defender-avatar{inset:3px;background:linear-gradient(145deg,#5a1c18,#2b0d0b 72%)}
.v2-defender-avatar:after{background:linear-gradient(90deg,#74231d,#d35145 50%,#74231d)}
.v2-defender-pos{position:absolute!important;z-index:4;left:-5px;top:-8px;min-width:23px;padding:2px 5px;border:1px solid #ff8f82;border-radius:3px;background:#501510;color:#fff;text-align:center;font:800 7px var(--font-mono)!important}
.v2-tactic-player.p1{left:50%;top:80%}.v2-tactic-player.p2{left:18%;top:69%}.v2-tactic-player.p3{left:82%;top:69%}.v2-tactic-player.p4{left:34%;top:46%}.v2-tactic-player.p5{left:65%;top:38%}.v2-defender.d1{left:50%;top:65%}.v2-defender.d2{left:25%;top:56%}.v2-defender.d3{left:75%;top:55%}.v2-defender.d4{left:40%;top:32%}.v2-defender.d5{left:59%;top:23%}
.v2-tactical-board.create .v2-tactic-player.p1{left:43%;top:63%}.v2-tactical-board.create .v2-tactic-player.p2{left:30%;top:48%}.v2-tactical-board.create .v2-tactic-player.p3{left:84%;top:46%}.v2-tactical-board.create .v2-tactic-player.p4{left:48%;top:39%}.v2-tactical-board.create .v2-tactic-player.p5{left:66%;top:29%}.v2-tactical-board.finish .v2-tactic-player.p1{left:52%;top:42%}.v2-tactical-board.finish .v2-tactic-player.p4{left:48%;top:25%;transform:translate(-50%,-50%) scale(1.1)}.v2-tactical-board.recover .v2-tactic-player{filter:saturate(.65)}
.v2-tactical-board.coverage-press .v2-defender{transform:translate(-50%,-50%) scale(1.1)}.v2-tactical-board.coverage-drop .v2-defender.d5,.v2-tactical-board.coverage-zone .v2-defender.d5{top:17%}.v2-tactical-board.coverage-switch .v2-defender:after{border-style:solid;border-color:rgba(255,115,99,.76)}
.v2-ball{position:absolute;z-index:7;width:17px;height:17px;border:2px solid #35180b;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f39b42,#b34816 65%,#6f240e);box-shadow:0 3px 8px #000;transition:left .7s cubic-bezier(.2,.8,.2,1),top .7s cubic-bezier(.2,.8,.2,1);animation:v2BallBounce .38s ease-in-out infinite alternate}.v2-ball.owner-1{left:52%;top:75%}.v2-ball.owner-2{left:20%;top:64%}.v2-ball.owner-3{left:80%;top:64%}.v2-ball.owner-4{left:37%;top:42%}.v2-ball.owner-5{left:66%;top:34%}.v2-tactical-board.finish .v2-ball{left:51%;top:19%;animation:v2BallFinish .8s cubic-bezier(.2,.8,.2,1) both}
.v2-play-result{position:absolute;z-index:10;right:14px;bottom:14px;display:grid;grid-template-columns:auto 1fr;column-gap:10px;width:min(370px,74%);padding:10px 12px;border:2px solid #a48c61;background:rgba(19,12,9,.92);box-shadow:5px 5px 0 rgba(0,0,0,.25);animation:v2ResultIn .38s ease-out}.v2-play-result small{grid-column:1/-1;color:#d7bd85;font:800 7px var(--font-mono)}.v2-play-result b{grid-row:2/4;color:#fff;font:700 38px 'Teko',sans-serif;line-height:1}.v2-play-result span{align-self:center;color:#e8dcc7;font-size:9px;line-height:1.35}.v2-play-result.good{border-color:#60c38a}.v2-play-result.good b{color:#70e69e}.v2-play-result.bad{border-color:#e45c4e}.v2-play-result.bad b{color:#ff7568}
@keyframes v2RouteDraw{to{stroke-dashoffset:-54}}@keyframes v2ScreenPulse{to{stroke-width:15}}@keyframes v2PassLine{to{stroke-dashoffset:-38}}@keyframes v2DefenseRead{to{transform:scale(1.16);opacity:.4}}@keyframes v2BallBounce{to{transform:translateY(-5px) rotate(24deg)}}@keyframes v2BallFinish{0%{transform:translateY(0) scale(1)}55%{transform:translateY(-28px) scale(.82)}100%{transform:translateY(0) scale(.72)}}@keyframes v2ResultIn{from{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}
@media(max-width:720px){.v2-court-live.has-tactical-board{min-height:400px}.v2-tactic-player{width:50px;height:50px}.v2-defender{width:35px;height:35px}.v2-play-result{width:82%}.v2-possession-caption b{font-size:15px}}
@media(prefers-reduced-motion:reduce){.v2-tactic-player,.v2-defender,.v2-ball{transition:none}.v2-play-routes path,.v2-defender:after,.v2-ball,.v2-play-result{animation:none!important}}

/* On-court freshness is a compact battery in the avatar's top-right corner. */
.v2-tactic-player>em{position:absolute;z-index:7;left:auto;right:-13px;top:-8px;width:24px;height:11px;padding:2px;border:1px solid #f4ead5;border-radius:3px;background:linear-gradient(90deg,var(--freshness-color,#45d17a) 0 calc(var(--freshness,100)*1%),rgba(15,18,18,.72) calc(var(--freshness,100)*1%) 100%) content-box;color:transparent;box-shadow:0 1px 0 rgba(21,16,13,.72),0 0 4px rgba(0,0,0,.32);pointer-events:none;transform:none;transition:background .35s ease}
.v2-tactic-player>em:after{content:'';position:absolute;right:-4px;top:2px;width:2px;height:5px;border-radius:0 2px 2px 0;background:#f4ead5;box-shadow:0 1px 0 rgba(21,16,13,.72)}.v2-tactic-player.last-scorer>em{filter:drop-shadow(0 0 3px var(--freshness-color,#45d17a))}
@media(max-width:720px){.v2-tactic-player>em{right:-12px;top:-7px;width:21px;height:9px;padding:2px}.v2-tactic-player>em:after{top:1px;height:5px}}

/* Converged matchup and coaching feedback */
.v2-opponent-five{margin-top:10px;padding:8px;border:1px solid rgba(230,193,112,.55);background:rgba(16,10,7,.72)}.v2-opponent-five>small{display:block;margin-bottom:6px;color:#e8bd5a;font:800 7px var(--font-mono);letter-spacing:.7px}.v2-opponent-five>span{display:grid;grid-template-columns:22px 1fr 25px;gap:4px;align-items:center;padding:4px 3px;border-top:1px solid rgba(255,255,255,.12);font-size:8px}.v2-opponent-five>span.threat{margin:2px -3px;padding:5px 6px;border:1px solid #e45749;background:rgba(150,42,34,.42)}.v2-opponent-five i,.v2-opponent-five em{font-style:normal}.v2-opponent-five i{color:#e8bd5a;font:800 7px var(--font-mono)}.v2-opponent-five em{text-align:right;font-weight:900}
.v2-defender small{position:absolute;z-index:4;left:50%;bottom:-13px;max-width:78px;padding:3px 6px;transform:translateX(-50%);border:1px solid rgba(255,132,117,.5);background:#36100d;color:#fff;font:700 6px var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-defender.threat{border-color:#ffd05d;box-shadow:0 0 0 4px rgba(139,43,35,.7),0 0 25px #f1b93f}.v2-defender.threat:before{content:'THREAT';position:absolute;z-index:6;left:50%;top:-24px;padding:2px 4px;transform:translateX(-50%);background:#8e2b23;color:#ffd66f;font:800 5px var(--font-mono)}.v2-tactic-player.last-scorer{border-color:#ffe180;box-shadow:0 0 0 5px rgba(65,128,85,.7),0 0 28px #82efa7}.v2-play-result span strong{color:#fff;font-size:10px}
.v2-coach-priority{margin:8px 0;padding:10px 11px;border:2px solid #806c4d;border-left-width:6px;background:#2c1d15;color:#fff}.v2-coach-priority small,.v2-coach-priority b,.v2-coach-priority span,.v2-coach-priority em{display:block}.v2-coach-priority small{color:#e7bd62;font:800 7px var(--font-mono);letter-spacing:1px}.v2-coach-priority b{margin:3px 0;font:700 21px 'Teko',sans-serif}.v2-coach-priority span{color:#d9cbb3;font-size:8px;line-height:1.4}.v2-coach-priority em{margin-top:6px;padding-top:5px;border-top:1px solid rgba(255,255,255,.18);color:#f0c85c;font:800 7px var(--font-mono);font-style:normal}.v2-coach-priority.fatigue{border-left-color:#e0953d}.v2-coach-priority.matchup,.v2-coach-priority.read{border-left-color:#df574a}.v2-coach-priority.stable{border-left-color:#5db780}.v2-coach-console .v2-console-grid button span{line-height:1.3}
.v2-build-relation{margin-top:6px;padding:6px 8px;border:1px solid;font:800 7px var(--font-mono);letter-spacing:.8px}.v2-build-relation.synergy{border-color:#4eaa74;background:#e2f0d8;color:#225f3b}.v2-build-relation.conflict{border-color:#c64a3f;background:#f3d7c9;color:#85271f}
.v2-replace-stage .v2-incoming-tactic{max-width:420px;margin:15px auto}.v2-incoming-tactic .v2-visual-card{width:100%}.v2-replace-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:18px 0}.v2-replace-grid button{min-height:145px;padding:14px;border:2px solid #5e4d38;background:#2a1b14;color:#fff;text-align:left;cursor:pointer;transition:transform .16s,border-color .16s}.v2-replace-grid button:hover{transform:translateY(-4px);border-color:#e6b949}.v2-replace-grid small,.v2-replace-grid b,.v2-replace-grid span{display:block}.v2-replace-grid small{color:#df5650;font:800 7px var(--font-mono)}.v2-replace-grid b{margin:7px 0;font:700 22px 'Teko',sans-serif}.v2-replace-grid span{color:#d3c3aa;font-size:9px;line-height:1.4}@media(max-width:760px){.v2-replace-grid{grid-template-columns:1fr 1fr}}
.v2-boss-rule em{display:block;margin-top:7px;padding-top:7px;border-top:1px solid rgba(255,255,255,.24);color:#ffd874;font:700 8px var(--font-mono);font-style:normal}
.v2-run-setup{display:grid;grid-template-columns:1fr 220px;gap:10px;margin-bottom:18px;padding:12px;border:2px solid #2b1c13;background:#dfcfad}.v2-run-setup>div>small,.v2-daily-toggle small{display:block;margin-bottom:6px;color:#8c2c23;font:800 7px var(--font-mono);letter-spacing:1px}.v2-difficulty-row{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.v2-difficulty-row button,.v2-daily-toggle{padding:8px;border:2px solid #716047;background:#f3e4c4;color:#21160f;text-align:left;cursor:pointer}.v2-difficulty-row button.active,.v2-daily-toggle.active{border-color:#e0b446;background:#882b23;color:#fff;box-shadow:3px 3px 0 #e0b446}.v2-difficulty-row button:disabled{cursor:not-allowed;filter:grayscale(1);opacity:.45}.v2-difficulty-row b,.v2-difficulty-row span,.v2-daily-toggle b,.v2-daily-toggle span{display:block}.v2-difficulty-row b,.v2-daily-toggle b{font:700 17px 'Teko',sans-serif}.v2-difficulty-row span,.v2-daily-toggle span{margin-top:2px;font-size:7px;line-height:1.3}.v2-daily-toggle{width:100%}@media(max-width:820px){.v2-run-setup{grid-template-columns:1fr}.v2-difficulty-row{grid-template-columns:1fr 1fr}}
.v2-meta-summary .v2-build-history{grid-column:1/-1}.v2-build-history>small{margin-bottom:7px}.v2-build-history>span{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-top:1px solid #a8926d}.v2-build-history span b,.v2-build-history span em{display:block;margin:0}.v2-build-history span em{color:#6e604e;font:700 8px var(--font-mono);font-style:normal}

/* High-contrast coaching priority card. Keep every information tier readable. */
#rogueApp .v2-coach-console .v2-coach-priority{background:#2b1d15!important;border-color:#79654a!important;border-left-color:#df574a!important;color:#fff!important;opacity:1!important;filter:none!important;box-shadow:inset 0 0 0 1px rgba(236,198,112,.08)}
#rogueApp .v2-coach-console .v2-coach-priority small{color:#efc65e!important;opacity:1!important}
#rogueApp .v2-coach-console .v2-coach-priority b{color:#fff!important;text-shadow:0 1px 0 #000;opacity:1!important}
#rogueApp .v2-coach-console .v2-coach-priority span{color:#e3d4bb!important;opacity:1!important}
#rogueApp .v2-coach-console .v2-coach-priority em{border-top-color:rgba(238,204,129,.28)!important;color:#ffd366!important;opacity:1!important}
#rogueApp .v2-coach-console .v2-coach-priority.fatigue{border-left-color:#e0953d!important}#rogueApp .v2-coach-console .v2-coach-priority.stable{border-left-color:#5db780!important}

/* Clutch-time presentation: reserved for late possessions and meaningful scores. */
.v2-tactical-board.clutch:after{content:'';position:absolute;z-index:1;inset:38px 0 0;pointer-events:none;background:radial-gradient(circle at 50% 54%,transparent 30%,rgba(12,7,5,.18) 68%,rgba(12,7,5,.62));animation:v2ClutchVignette 1.15s ease-in-out infinite alternate}.v2-clutch-banner{position:absolute;z-index:12;left:50%;top:54px;min-width:220px;padding:7px 22px;transform:translateX(-50%);border:1px solid #e7bc5b;background:rgba(24,13,9,.9);text-align:center;box-shadow:0 0 24px rgba(239,184,61,.32);animation:v2ClutchBanner .42s ease-out}.v2-clutch-banner small,.v2-clutch-banner b{display:block}.v2-clutch-banner small{color:#f2c55d;font:900 7px var(--font-mono);letter-spacing:2px}.v2-clutch-banner b{margin-top:2px;color:#fff;font:800 17px 'Teko',sans-serif;letter-spacing:.8px}.v2-tactical-board.clutch .v2-shot-clock{border-color:#f0be4d;box-shadow:0 0 18px rgba(239,186,70,.38);animation:v2ClockPulse .78s ease-in-out infinite alternate}.v2-tactical-board.clutch .v2-shot-clock b{color:#ffd25f}.v2-court-flash{position:absolute;z-index:15;inset:38px 0 0;pointer-events:none;opacity:0;background:radial-gradient(circle at 50% 35%,rgba(255,239,174,.82),rgba(239,177,60,.25) 28%,transparent 62%)}.v2-tactical-board.key-make .v2-court-flash{animation:v2CourtFlash .72s ease-out}.v2-tactical-board.key-make .v2-tactic-player.last-scorer{z-index:16;animation:v2HeroPulse .9s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 0 7px rgba(239,192,79,.58),0 0 42px #ffe081}.v2-shot-trail{position:absolute;z-index:8;left:50%;top:18%;width:5px;height:190px;transform:rotate(18deg);transform-origin:top;border-radius:50%;opacity:0;background:linear-gradient(#fff6c7,#f0a33d 38%,transparent);filter:blur(1px);pointer-events:none}.v2-tactical-board.key-make .v2-shot-trail{animation:v2ShotTrail .72s ease-out}.v2-play-result.key-result{border-width:3px;border-color:#f2c35d;background:linear-gradient(105deg,rgba(29,15,10,.98),rgba(104,54,17,.96));box-shadow:0 0 30px rgba(238,185,71,.55),7px 7px 0 rgba(0,0,0,.4);animation:v2KeyResult .62s cubic-bezier(.2,.9,.2,1)}.v2-play-result.key-result small{color:#ffd66e}.v2-play-result.key-result b{font-size:48px;color:#fff1a8}.v2-tactical-board.lead-change .v2-board-head{animation:v2LeadChange 1s ease-out}
@keyframes v2ClutchVignette{to{background:radial-gradient(circle at 50% 54%,transparent 25%,rgba(12,7,5,.25) 66%,rgba(12,7,5,.72))}}@keyframes v2ClutchBanner{from{opacity:0;transform:translate(-50%,-12px) scale(.92)}to{opacity:1;transform:translateX(-50%) scale(1)}}@keyframes v2ClockPulse{to{transform:scale(1.05);box-shadow:0 0 27px rgba(239,186,70,.7)}}@keyframes v2CourtFlash{0%{opacity:0}18%{opacity:1}100%{opacity:0}}@keyframes v2HeroPulse{0%{transform:translate(-50%,-50%) scale(.72)}42%{transform:translate(-50%,-50%) scale(1.22)}100%{transform:translate(-50%,-50%) scale(1)}}@keyframes v2ShotTrail{0%{opacity:0;transform:translateY(120px) rotate(18deg) scaleY(.15)}28%{opacity:1}100%{opacity:0;transform:translateY(-55px) rotate(18deg) scaleY(1)}}@keyframes v2KeyResult{0%{opacity:0;transform:translateX(36px) scale(.84)}55%{transform:translateX(-5px) scale(1.04)}100%{opacity:1;transform:none}}@keyframes v2LeadChange{0%,100%{background:rgba(18,12,9,.86)}35%{background:rgba(133,54,20,.96);box-shadow:inset 0 0 30px #f1bd54}}
@media(prefers-reduced-motion:reduce){.v2-tactical-board.clutch:after,.v2-clutch-banner,.v2-tactical-board.clutch .v2-shot-clock,.v2-tactical-board.key-make .v2-court-flash,.v2-tactical-board.key-make .v2-tactic-player.last-scorer,.v2-tactical-board.key-make .v2-shot-trail,.v2-play-result.key-result,.v2-tactical-board.lead-change .v2-board-head{animation:none!important}}

/* Unified game, stoppage and result art direction */
.v2-coach-sim,.v2-result-stage{--v2-ink:#21140e;--v2-paper:#ead9b7;--v2-gold:#e7bb55;--v2-red:#902e24}.v2-coach-sim .v2-coach-board,.v2-result-stage .v2-unified-outcome{border-color:var(--v2-ink)}.v2-coach-sim .v2-scoreboard{border-color:var(--v2-gold);background:linear-gradient(100deg,#130d09,#2b1711 55%,#130d09)}.v2-coach-sim .v2-coach-console{background:linear-gradient(160deg,#ead9b7,#d7c29b)}.v2-coach-sim .v2-console-status,.v2-coach-sim .v2-rotation-desk{box-shadow:4px 4px 0 rgba(49,30,18,.18)}.v2-coach-sim .v2-console-primary{background:linear-gradient(100deg,#7e271f,#aa382b);box-shadow:0 4px 0 #35140f;transition:transform .14s,filter .14s}.v2-coach-sim .v2-console-primary:not(:disabled):hover{transform:translateY(-2px);filter:brightness(1.08)}
.v2-result-stage{position:relative;overflow:hidden;background:radial-gradient(circle at 50% 15%,rgba(229,188,84,.25),transparent 34%),linear-gradient(145deg,#1c110c,#5f211a 72%,#29150f);padding:30px}.v2-result-stage.is-loss{background:radial-gradient(circle at 50% 15%,rgba(160,148,120,.13),transparent 32%),linear-gradient(145deg,#18120e,#40342a)}.v2-result-stage .v2-unified-outcome{position:relative;z-index:2;max-width:1050px;margin:0 auto;border:3px solid var(--v2-gold);background:linear-gradient(150deg,#f3e5c5,#d8c29a);box-shadow:12px 12px 0 rgba(0,0,0,.34)}.v2-result-ribbon{display:grid;grid-template-columns:1fr auto 1fr;gap:15px;align-items:center;margin:-24px -24px 20px;padding:10px 16px;border-bottom:2px solid var(--v2-gold);background:#22130e;color:#fff}.v2-result-ribbon span{color:#d9bd7c;font:800 7px var(--font-mono);letter-spacing:1px}.v2-result-ribbon span:last-child{text-align:right}.v2-result-ribbon b{color:#f3cb65;font:800 10px var(--font-mono);letter-spacing:1.2px}.v2-result-stage .rogue-score{color:#8e2d23;text-shadow:2px 2px 0 #e7be64}.v2-result-stage.is-loss .rogue-score{color:#42342a;text-shadow:none}.v2-result-stage .rogue-quarter-grid span{border-color:#8b7757;background:rgba(255,248,225,.52)}.v2-series-stakes{margin:14px 0;padding:13px;border:2px solid #a53429;background:#2b1711;color:#fff;text-align:left}.v2-series-stakes small,.v2-series-stakes b,.v2-series-stakes span{display:block}.v2-series-stakes small{color:#e6bd5b;font:800 7px var(--font-mono)}.v2-series-stakes b{margin:3px 0;font:700 24px 'Teko',sans-serif}.v2-series-stakes span{color:#d8c9b1;font-size:9px}
/* Finals ceremony */
.v2-finals-stage{position:relative;overflow:hidden}.v2-finals-stage:before,.v2-finals-stage:after{content:'';position:absolute;z-index:0;top:-25%;width:180px;height:150%;background:linear-gradient(90deg,transparent,rgba(255,223,133,.18),transparent);transform:rotate(18deg);pointer-events:none;animation:v2ArenaLight 4.5s ease-in-out infinite alternate}.v2-finals-stage:before{left:8%}.v2-finals-stage:after{right:8%;animation-delay:-2.1s}.v2-finals-stage>*{position:relative;z-index:1}.v2-finals-banner{position:relative;overflow:hidden}.v2-finals-banner:after{content:'THE FINALS';position:absolute;right:-12px;bottom:-35px;color:rgba(255,255,255,.06);font:900 90px 'Teko',sans-serif;letter-spacing:3px}.v2-finals-ceremony{display:grid;grid-template-columns:35px 1fr 35px;gap:10px;align-items:center;margin:-8px 0 18px;padding:10px;border-top:1px solid #e4ba56;border-bottom:1px solid #e4ba56;background:#2b1711;color:#fff;text-align:center}.v2-finals-ceremony>span{color:#edc359;font-size:18px;animation:v2FinalPulse 1.3s ease-in-out infinite alternate}.v2-finals-ceremony small,.v2-finals-ceremony b{display:block}.v2-finals-ceremony small{color:#cdbd9f;font:700 7px var(--font-mono)}.v2-finals-ceremony b{margin-top:2px;color:#f0c762;font:800 10px var(--font-mono);letter-spacing:1px}.v2-finals-stage .v2-court-live{box-shadow:inset 0 0 70px rgba(220,167,49,.2)}.v2-finals-stage .v2-board-head{border-color:#f0c762;background:rgba(48,20,13,.9)}
.v2-confetti{position:absolute;z-index:5;inset:0;overflow:hidden;pointer-events:none}.v2-confetti i{position:absolute;left:calc(var(--i) * 4.5%);top:-20px;width:8px;height:18px;background:#efc04d;animation:v2Confetti 2.8s linear infinite;animation-delay:calc(var(--i)*-.13s)}.v2-confetti i:nth-child(3n){background:#a33227;animation-duration:2.3s}.v2-confetti i:nth-child(4n){background:#f5ead1;animation-duration:3.2s}.v2-title-won .v2-unified-outcome{animation:v2TrophyArrival .65s cubic-bezier(.2,.8,.2,1)}
@keyframes v2ArenaLight{to{transform:translateX(90px) rotate(10deg);opacity:.45}}@keyframes v2FinalPulse{to{transform:scale(1.22);filter:drop-shadow(0 0 8px #ffd86a)}}@keyframes v2Confetti{to{transform:translate(45px,900px) rotate(620deg)}}@keyframes v2TrophyArrival{from{transform:scale(.92);opacity:.2}to{transform:none;opacity:1}}
@media(max-width:720px){.v2-result-stage{padding:12px}.v2-result-ribbon{grid-template-columns:1fr;margin:-24px -24px 14px;text-align:center}.v2-result-ribbon span:last-child{text-align:center}.v2-finals-ceremony{grid-template-columns:20px 1fr 20px}.v2-finals-stage:before,.v2-finals-stage:after{display:none}}
@media(prefers-reduced-motion:reduce){.v2-finals-stage:before,.v2-finals-stage:after,.v2-finals-ceremony>span,.v2-confetti i,.v2-title-won .v2-unified-outcome{animation:none!important}}

/* Championship cover: roster-first, expressive and export-ready. */
.v2-championship-end .rogue-outcome{max-width:1120px}.v2-champion-showcase{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:10px;margin:14px 0}.v2-mvp-feature{position:relative;min-height:330px;border:2px solid #c69b42;background:#1c110c;overflow:hidden;text-align:left}.v2-mvp-feature:before{content:'';position:absolute;inset:0;background-image:var(--mvp-art);background-repeat:no-repeat;background-size:contain;background-position:right bottom;filter:saturate(.82) contrast(1.08)}.v2-mvp-feature:after{content:'MVP';position:absolute;right:-4px;top:-35px;color:rgba(238,194,91,.13);font:900 165px 'Teko',sans-serif}.v2-mvp-feature>div{position:absolute;z-index:2;inset:auto 0 0;padding:85px 22px 20px;background:linear-gradient(0deg,#160e0a 32%,transparent);color:#fff}.v2-mvp-feature small{color:#ebbf58;font:800 8px var(--font-mono);letter-spacing:1.2px}.v2-mvp-feature h4{margin:3px 0 0;max-width:70%;color:#fff;font:700 49px 'Teko',sans-serif;line-height:.9;text-transform:uppercase}.v2-mvp-feature p{margin:5px 0 9px;color:#d6c6aa;font:700 9px var(--font-mono)}.v2-mvp-ratings{display:flex;gap:5px;flex-wrap:wrap}.v2-mvp-ratings span{padding:5px 7px;border:1px solid #7c694c;background:rgba(0,0,0,.46);color:#d8c7aa;font:700 7px var(--font-mono)}.v2-mvp-ratings b{color:#efc662;font-size:11px}.v2-title-five{border:2px solid #796747;background:#2a1912;color:#fff;text-align:left}.v2-showcase-head{padding:10px 12px;border-bottom:1px solid #766345;background:#20130e}.v2-showcase-head small,.v2-showcase-head b{display:block}.v2-showcase-head small{color:#e7b951;font:800 7px var(--font-mono);letter-spacing:1px}.v2-showcase-head b{margin-top:2px;color:#fff;font:700 19px 'Teko',sans-serif}.v2-title-five>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#6d5d45}.v2-title-five article{position:relative;min-height:122px;padding:14px 8px 8px 88px;background:#e5d4b1;color:#20140e;overflow:hidden}.v2-title-five article:before{content:'';position:absolute;left:0;bottom:0;width:86px;height:116px;background-image:var(--player-art);background-size:contain;background-repeat:no-repeat;background-position:center bottom;filter:saturate(.72)}.v2-title-five article>span{position:absolute;z-index:2;left:5px;top:5px;padding:3px 5px;background:#7f291f;color:#fff;font:800 7px var(--font-mono)}.v2-title-five article b,.v2-title-five article small{display:block;position:relative}.v2-title-five article b{font:700 16px 'Teko',sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-title-five article small{color:#665946;font:700 6px var(--font-mono);line-height:1.5}.v2-title-five article.mvp{background:#e7c976}.v2-title-five article.mvp:after{content:'★ MVP';position:absolute;right:5px;top:5px;color:#8b2c23;font:800 6px var(--font-mono)}.v2-title-five article:last-child{grid-column:1/-1}.v2-team-dna{margin:10px 0;border:2px solid #7f6a49;background:#2a1912;text-align:left}.v2-ability-bars{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:12px}.v2-ability-bars>div{display:grid;grid-template-columns:1fr auto;gap:5px;align-items:center}.v2-ability-bars span{color:#d8c6a6;font:800 7px var(--font-mono)}.v2-ability-bars>b{color:#efc665;font:800 21px 'Teko',sans-serif}.v2-ability-bars i{grid-column:1/-1;height:7px;background:#100b08;overflow:hidden}.v2-ability-bars em{display:block;height:100%;background:linear-gradient(90deg,#a03529,#efc65e)}.v2-share-run{display:grid;grid-template-columns:1fr auto auto;gap:9px;align-items:center;margin:15px 0;padding:13px;border:2px solid #c29943;background:linear-gradient(100deg,#21130e,#68251d);color:#fff;text-align:left}.v2-share-run small,.v2-share-run b,.v2-share-run span{display:block}.v2-share-run small{color:#edc35e;font:800 7px var(--font-mono);letter-spacing:1px}.v2-share-run b{font:700 21px 'Teko',sans-serif}.v2-share-run span{color:#cfc0a8;font-size:9px}.v2-share-run button{padding:11px;border:1px solid #e4bd62;background:#8d2e24;color:#fff;font:800 8px var(--font-mono);cursor:pointer}.v2-share-run button:last-child{background:transparent}.v2-share-run button:hover{background:#e4bd62;color:#21130e}
@media(max-width:850px){.v2-champion-showcase{grid-template-columns:1fr}.v2-title-five>div:last-child{grid-template-columns:repeat(2,1fr)}.v2-ability-bars{grid-template-columns:repeat(3,1fr)}.v2-share-run{grid-template-columns:1fr 1fr}.v2-share-run>div{grid-column:1/-1}}
@media(max-width:560px){.v2-mvp-feature{min-height:285px}.v2-mvp-feature h4{font-size:38px}.v2-title-five>div:last-child{grid-template-columns:1fr}.v2-title-five article:last-child{grid-column:auto}.v2-ability-bars{grid-template-columns:1fr 1fr}.v2-share-run{grid-template-columns:1fr}}

/* Persistent run exit: visible, safe and deliberately separated from play controls. */
.v2-end-run-button{align-self:stretch;min-width:90px;padding:7px 10px;border:1px solid rgba(246,207,133,.68);background:rgba(31,15,11,.72);color:#fff;text-align:left;cursor:pointer;transition:background .15s,transform .15s}.v2-end-run-button:hover{background:#9a3026;transform:translateY(-1px)}.v2-end-run-button b{float:left;margin-right:7px;color:#edbd58;font:800 26px 'Teko',sans-serif;line-height:1}.v2-end-run-button span,.v2-end-run-button small{display:block}.v2-end-run-button span{font:800 8px var(--font-mono);letter-spacing:.8px}.v2-end-run-button small{margin-top:2px;color:#cfbea3;font:700 6px var(--font-mono)}.v2-end-run-modal{position:fixed;z-index:10020;inset:0;display:grid;place-items:center;padding:20px;background:rgba(12,8,6,.78);backdrop-filter:blur(5px)}.v2-end-run-modal>div{position:relative;width:min(520px,100%);padding:28px;border:3px solid #d0a64f;background:linear-gradient(145deg,#f0e1c1,#d2bc92);color:#21140e;box-shadow:12px 12px 0 rgba(0,0,0,.4);text-align:center}.v2-end-run-mark{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 10px;border:2px solid #8f2d24;border-radius:50%;color:#8f2d24;font:800 48px 'Teko',sans-serif}.v2-end-run-modal small{color:#8f2d24;font:800 8px var(--font-mono);letter-spacing:1.3px}.v2-end-run-modal h3{margin:5px 0;font:700 40px 'Teko',sans-serif}.v2-end-run-modal p{max-width:400px;margin:0 auto;color:#665845;font-size:12px;line-height:1.5}.v2-end-run-modal>div>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.v2-end-run-modal button{padding:13px;border:2px solid #321812;background:#922f25;color:#fff;font:800 9px var(--font-mono);cursor:pointer}.v2-end-run-modal button.secondary{border-color:#716148;background:transparent;color:#21140e}.v2-end-run-modal button:hover{filter:brightness(1.08)}
@media(max-width:620px){.v2-end-run-button{min-width:76px}.v2-end-run-modal>div{padding:20px}.v2-end-run-modal h3{font-size:32px}.v2-end-run-modal>div>div{grid-template-columns:1fr}}

/* Lower-court coaching data desk — uses the previously empty left column. */
.v2-court-dashboard{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(245px,.65fr);gap:10px;margin-top:12px}.v2-live-box,.v2-live-insights{border:2px solid #7b6847;background:#261811;color:#fff;overflow:hidden}.v2-data-head{display:grid;grid-template-columns:minmax(155px,1fr) repeat(6,34px);gap:4px;align-items:end;padding:8px 9px;border-bottom:1px solid #796646;background:#3a2117}.v2-data-head div small,.v2-data-head div b{display:block}.v2-data-head small{color:#e4b851;font:800 7px var(--font-mono);letter-spacing:.8px}.v2-data-head b{font:700 16px 'Teko',sans-serif}.v2-data-head>span{color:#cbb99a;font:800 6px var(--font-mono);text-align:center}.v2-box-rows{display:grid}.v2-box-rows>div{display:grid;grid-template-columns:minmax(155px,1fr) repeat(6,34px);gap:4px;align-items:center;min-height:43px;padding:2px 9px;border-bottom:1px solid rgba(224,197,141,.15);color:#d8c8aa;font:700 8px var(--font-mono);text-align:center}.v2-box-rows>div.active{background:rgba(47,112,77,.2)}.v2-box-rows>div.danger{box-shadow:inset 4px 0 #d45247}.v2-box-player{display:grid;grid-template-columns:31px 23px minmax(0,1fr);gap:5px;align-items:center;text-align:left}.v2-box-player i{width:29px;height:36px;background-position:center bottom;background-size:contain;background-repeat:no-repeat}.v2-box-player em{padding:2px;border:1px solid #806d4e;color:#e8bd5b;font-style:normal;text-align:center}.v2-box-player b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff;font:700 12px 'Teko',sans-serif}.v2-live-insights .v2-data-head{grid-template-columns:1fr}.v2-insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#6d5a3e}.v2-insight-grid article{min-height:82px;padding:9px;background:#ead9b6;color:#21150e}.v2-insight-grid small,.v2-insight-grid b,.v2-insight-grid span{display:block}.v2-insight-grid small{color:#8b2c23;font:800 6px var(--font-mono)}.v2-insight-grid b{margin:4px 0;font:700 18px 'Teko',sans-serif}.v2-insight-grid b.good{color:#2f7651}.v2-insight-grid b.bad,.v2-insight-grid article.warning b{color:#a02f26}.v2-insight-grid span{color:#665947;font-size:7px}.v2-quarter-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#786546}.v2-quarter-strip span{padding:7px 3px;background:#2c1b13;text-align:center}.v2-quarter-strip small,.v2-quarter-strip b{display:block}.v2-quarter-strip small{color:#d7b55f;font:800 6px var(--font-mono)}.v2-quarter-strip b{font:700 13px 'Teko',sans-serif}
@media(max-width:860px){.v2-court-dashboard{grid-template-columns:1fr}.v2-live-insights{display:grid;grid-template-columns:1fr 1fr}.v2-live-insights .v2-data-head{grid-column:1/-1}.v2-quarter-strip{align-self:stretch}}@media(max-width:620px){.v2-data-head,.v2-box-rows>div{grid-template-columns:minmax(120px,1fr) repeat(6,28px)}.v2-box-player{grid-template-columns:22px 20px minmax(0,1fr)}.v2-box-player i{width:22px}.v2-live-insights{display:block}}
.v2-situation-calls{margin:8px 0;border:2px solid #473526;background:#22150f;color:#fff}.v2-situation-head{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:8px 10px;border-bottom:1px solid #806849;background:#342118}.v2-situation-head small{color:#e6bc59;font:800 7px var(--font-mono);letter-spacing:1px}.v2-situation-head b{font:800 7px var(--font-mono)}.v2-call-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:7px}.v2-call-grid button{min-height:105px;padding:8px;border:1px solid #7e6950;background:#f0dfbd;color:#21150e;text-align:left;cursor:pointer;transition:transform .14s,border-color .14s,background .14s}.v2-call-grid button:hover:not(:disabled){transform:translateY(-2px);border-color:#e3b546;background:#fff0cb}.v2-call-grid button.selected{border:2px solid #e7bb55;background:#8d2b22;color:#fff;box-shadow:3px 3px 0 #e7bb55}.v2-call-grid button:disabled:not(.selected){opacity:.48;cursor:not-allowed}.v2-call-grid small,.v2-call-grid b,.v2-call-grid span,.v2-call-grid em{display:block}.v2-call-grid small{color:#9a3127;font:800 6px var(--font-mono);letter-spacing:.8px}.v2-call-grid button.selected small{color:#ffd66f}.v2-call-grid b{margin:4px 0;font:700 17px 'Teko',sans-serif;line-height:1}.v2-call-grid span{font-size:8px;line-height:1.3}.v2-call-grid em{margin-top:5px;padding-top:4px;border-top:1px solid rgba(65,39,24,.25);color:#8e392d;font:700 6px var(--font-mono);font-style:normal}.v2-call-grid button.selected em{border-color:rgba(255,255,255,.25);color:#ffe09a}@media(max-width:620px){.v2-call-grid{grid-template-columns:1fr}.v2-call-grid button{min-height:86px}}
/* Right coaching desk: information first, recommendation second, action last. */
.v2-coach-console.v2-information-flow{display:flex;flex-direction:column;gap:9px;align-content:stretch}
.v2-information-flow>.v2-situation-summary{order:1;margin:0;border-color:#8f2d24;box-shadow:4px 4px 0 rgba(50,29,17,.2)}
.v2-information-flow>.v2-coach-priority{order:2;margin:0}
.v2-information-flow>.v2-system-compact{order:3;margin:0;padding:8px 10px;border-width:1px;background:rgba(238,221,186,.78);box-shadow:none}
.v2-information-flow>.v2-system-compact small,.v2-information-flow>.v2-system-compact b,.v2-information-flow>.v2-system-compact span{display:inline;margin-right:7px}
.v2-information-flow>.v2-system-compact small{font-size:6px}.v2-information-flow>.v2-system-compact b{font-size:11px}.v2-information-flow>.v2-system-compact span{font-size:7px}
.v2-information-flow>.v2-system-compact>div{display:inline-flex;gap:4px;margin:0}.v2-information-flow>.v2-system-compact em{padding:3px 5px;font-size:6px}
.v2-information-flow>.v2-console-status{order:4;margin:0;border:3px solid #8f2d24;border-left-width:9px;background:#f3e2bd;box-shadow:5px 5px 0 rgba(54,31,18,.24)}
.v2-information-flow>.v2-console-status small{color:#8f2d24}.v2-information-flow>.v2-console-status h3{font-size:26px}.v2-information-flow>.v2-console-status p{font-weight:700;color:#4b3829}
.v2-information-flow>.v2-current-operation{order:5;margin:0;border:3px solid #d2a941;background:#fff0c9;box-shadow:5px 5px 0 #8f2d24}
.v2-information-flow>.v2-action-zone{order:6;border:2px solid #5f4932;background:#2a1912;box-shadow:4px 4px 0 rgba(51,29,17,.22)}
.v2-action-zone-head{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-bottom:1px solid #806849;background:#3a2117;color:#fff}
.v2-action-zone-head small{color:#efc65e;font:800 7px var(--font-mono);letter-spacing:1px}.v2-action-zone-head b{font:800 8px var(--font-mono)}
.v2-information-flow>.v2-console-grid{order:7;margin:0}.v2-information-flow>.v2-console-primary{order:8;margin:0}.v2-information-flow>.v2-rotation-desk:not(.v2-current-operation){order:9;margin:0;opacity:.9}
.v2-information-flow .v2-situation-summary>.v2-scout-live{margin:0;border:0;border-top:1px solid rgba(238,202,126,.25);background:#2b1a13}
@media(max-width:720px){.v2-information-flow>.v2-system-compact small,.v2-information-flow>.v2-system-compact b,.v2-information-flow>.v2-system-compact span{display:block;margin:2px 0}.v2-information-flow>.v2-system-compact>div{display:flex;margin-top:5px}.v2-information-flow>.v2-console-status h3{font-size:22px}}

/* Readability and consistent stamina batteries. */
.v2-information-flow>.v2-system-compact{
  border-color:#756044;
  background:#efddb7;
  color:#21150e;
}
.v2-information-flow>.v2-system-compact small{
  color:#8f2d24;
}
.v2-information-flow>.v2-system-compact b,
.v2-information-flow>.v2-system-compact span{
  color:#21150e;
  opacity:1;
}
.v2-information-flow>.v2-system-compact em{
  border-color:#776247;
  background:#f7e8c8;
  color:#612019;
}
.v2-tactic-player>em,
.v2-defender-energy{
  top:2px!important;
  right:1px!important;
  left:auto!important;
  width:30px!important;
  min-width:30px!important;
  max-width:30px!important;
  height:9px!important;
  padding:1px!important;
  border-width:1px!important;
  border-radius:2px!important;
  box-sizing:border-box!important;
}
.v2-tactic-player>em:after,
.v2-defender-energy:after{
  right:-4px!important;
  top:2px!important;
  width:3px!important;
  height:3px!important;
  border-width:1px!important;
}
@media(max-width:720px){
  .v2-tactic-player>em,
  .v2-defender-energy{
    top:1px!important;
    right:0!important;
    width:27px!important;
    min-width:27px!important;
    max-width:27px!important;
    height:8px!important;
  }
}

/* Live-coaching hotfix: make the compact identity card readable and keep
   both teams' freshness batteries identical, inside the portrait corner. */
#rogueApp .v2-coach-console.v2-information-flow > .v2-system-contract.v2-system-compact{
  border-color:#6e5a3f!important;
  border-left:5px solid #2f9d70!important;
  background:#f0dfbb!important;
  color:#21150e!important;
  box-shadow:3px 3px 0 rgba(54,31,18,.18)!important;
}
#rogueApp .v2-coach-console.v2-information-flow > .v2-system-contract.v2-system-compact small{
  color:#8f2d24!important;
  opacity:1!important;
}
#rogueApp .v2-coach-console.v2-information-flow > .v2-system-contract.v2-system-compact > b,
#rogueApp .v2-coach-console.v2-information-flow > .v2-system-contract.v2-system-compact > span{
  color:#21150e!important;
  opacity:1!important;
  text-shadow:none!important;
}
#rogueApp .v2-coach-console.v2-information-flow > .v2-system-contract.v2-system-compact em{
  border-color:#6e5a3f!important;
  background:#f8e9ca!important;
  color:#6f251d!important;
  opacity:1!important;
}
#rogueApp .v2-tactical-board .v2-tactic-player > em,
#rogueApp .v2-tactical-board .v2-defender > .v2-defender-energy{
  position:absolute!important;
  top:1px!important;
  right:1px!important;
  left:auto!important;
  display:block!important;
  flex:0 0 24px!important;
  width:24px!important;
  min-width:24px!important;
  max-width:24px!important;
  height:8px!important;
  min-height:8px!important;
  max-height:8px!important;
  margin:0!important;
  padding:1px!important;
  border:1px solid #f4dfb7!important;
  border-radius:2px!important;
  box-sizing:border-box!important;
  transform:none!important;
  pointer-events:none!important;
}
#rogueApp .v2-tactical-board .v2-tactic-player > em::after,
#rogueApp .v2-tactical-board .v2-defender > .v2-defender-energy::after{
  right:-4px!important;
  top:2px!important;
  width:3px!important;
  height:3px!important;
  border-width:1px!important;
}
@media(max-width:720px){
  #rogueApp .v2-tactical-board .v2-tactic-player > em,
  #rogueApp .v2-tactical-board .v2-defender > .v2-defender-energy{
    top:1px!important;
    right:1px!important;
    width:22px!important;
    min-width:22px!important;
    max-width:22px!important;
    flex-basis:22px!important;
    height:8px!important;
    min-height:8px!important;
    max-height:8px!important;
  }
}
/* Schematic routes remain readable throughout play; pauses freeze motion. */
.v2-tactical-board .v2-play-routes .route{opacity:.55;animation:v2RouteDraw 1.4s linear infinite}.v2-tactical-board.create .route,.v2-tactical-board.finish .route{opacity:.9}.v2-tactical-board.paused .v2-play-routes path{animation:none!important;opacity:.45}
@media(prefers-reduced-motion:reduce){.v2-tactical-board .v2-play-routes path{animation:none!important}}
