/* BSC Poker X Space Race v18.0 — Hovercraft Engine 2.0 responsive CG layer */
:root{color-scheme:dark;--bg:#02070b;--panel:#06131a;--panel2:#091b24;--line:#173746;--line2:#285062;--text:#f3f6f8;--muted:#83a2b2;--gold:#f4b400;--gold2:#ffd34a;--green:#10d67a;--cyan:#29dbe8;--danger:#ff5656;--r:14px;--shadow:0 18px 48px #0009}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(circle at 50% -12%,#18224a 0,#06131f 30%,#02060b 70%);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}body{overflow-x:hidden}button,a,input{font:inherit}.dogrun-app{width:min(1920px,100%);margin:auto;padding:10px;display:grid;gap:10px}.panel{background:linear-gradient(180deg,rgba(7,24,32,.97),rgba(3,13,18,.98));border:1px solid var(--line);border-radius:var(--r);box-shadow:inset 0 1px #ffffff08}.app-header{min-height:70px;display:grid;grid-template-columns:minmax(250px,1fr) auto minmax(250px,1fr);align-items:center;padding:10px 14px}.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.brand-logo{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:2px solid var(--gold);color:var(--gold);font-weight:900;background:#0b1419}.brand b{display:block;font-size:21px}.brand small,.section-head small,.race-status small,.analytics-card header small{display:block;color:var(--muted);font-size:10px;letter-spacing:.12em;margin-top:3px}.main-nav{display:flex;gap:8px}.main-nav a,.header-actions button,.camera-bar button,.market-tabs button,.explorer-tabs button,.combo-tabs button,.history-range button,.place-filter button{border:1px solid #244452;background:#061219;color:#dce7eb;border-radius:9px;padding:10px 16px;text-decoration:none;font-weight:800;cursor:pointer}.main-nav a.active,.camera-bar button.active,.market-tabs button.active,.explorer-tabs button.active,.combo-tabs button.active,.history-range button.active,.place-filter button.active{border-color:#c89200;color:#ffd34a;background:linear-gradient(180deg,#171505,#090c0d)}.header-actions{justify-self:end;display:flex;gap:8px}.header-actions button:hover,.camera-bar button:hover{border-color:#57778a}.race-status{display:grid;grid-template-columns:1.05fr .9fr 1.35fr .8fr 1fr 1.1fr;overflow:hidden}.race-status>div{min-height:78px;padding:13px 18px;border-right:1px solid #15323e}.race-status>div:last-child{border-right:0}.race-status span,.ticket-builder>div>span,.balance-box>span{display:block;color:#7fa0b0;font-size:10px;letter-spacing:.12em}.race-status strong{display:block;font-size:22px;margin:5px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phase-live,.phase-finished{color:#18e782}.phase-countdown{color:#ffd34a}.duration{border:1px solid #2e4b58;background:#07141a;color:#fff;border-radius:8px;padding:6px 10px;font-weight:900}.duration.active{background:#f3b400;color:#101010;border-color:#f3b400}.broadcast-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:10px;min-height:620px}.race-broadcast{padding:10px;display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0}.race-toolbar{display:flex;gap:10px;align-items:stretch;margin-bottom:8px}.dogbot-mini{display:flex;gap:10px;align-items:center;min-width:340px;max-width:430px;padding:8px 12px;border:1px solid #1d4555;border-radius:12px;background:#030c11}.dogbot-mini img{width:74px;height:74px;object-fit:contain}.dogbot-mini b{color:#ffc525}.dogbot-mini small{display:block;color:#35dce7;font-size:9px}.dogbot-mini p{margin:5px 0;color:#d9e4e8;font-size:12px;line-height:1.35}.voice-wave{display:flex;gap:3px;height:11px;align-items:end}.voice-wave i{width:3px;height:6px;background:#14df82;border-radius:4px;animation:wave .8s infinite alternate}.voice-wave i:nth-child(even){animation-delay:.2s}@keyframes wave{to{height:11px}}.start-callout,.winner-banner{flex:1;display:flex;align-items:center;gap:10px;border:1px solid #624d05;background:#171303;border-radius:12px;padding:10px 16px}.start-callout>span{font-size:30px;color:#f4b400}.start-callout strong,.winner-banner strong{display:block;color:#ffd34a}.start-callout small,.winner-banner span{display:block;color:#b9c9cf;font-size:11px;margin-top:4px}.start-callout.hidden{display:none}.track-shell{position:relative;min-height:520px;border-radius:14px;overflow:hidden;background:#03090c;border:1px solid #1b3946}.dogrun-3d-stage{position:absolute;inset:0;background:linear-gradient(#172d38 0 20%,#102118 20% 100%)}.dogrun-3d-stage canvas{display:block;width:100%!important;height:100%!important}.render-loading{position:absolute;inset:0;display:grid;place-content:center;text-align:center;background:#03090c;z-index:3}.render-loading b{color:#ffd34a;font-size:18px}.render-loading span{color:#7fa0b0;margin-top:5px}.broadcast-hud{position:absolute;top:12px;left:12px;z-index:5;display:flex;gap:6px;align-items:center;padding:6px;background:#031016e8;border:1px solid #214555;border-radius:9px}.broadcast-hud span{padding:5px 8px;border-radius:6px;background:#081922;font-size:10px;font-weight:800}.broadcast-hud .live-dot{background:#b71f28;color:#fff}.track-caption{position:absolute;left:14px;bottom:58px;z-index:4;padding:8px 11px;border-radius:9px;background:#02090ccc;border:1px solid #284858}.track-caption b{display:block;color:#ffd34a;font-size:11px}.track-caption span{font-size:9px;color:#8fb0bd}.camera-bar{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);z-index:6;display:flex;gap:5px;max-width:calc(100% - 24px);overflow:auto;padding:5px;border-radius:10px;background:#02080ddf;border:1px solid #294554}.camera-bar button{padding:7px 10px;font-size:9px;white-space:nowrap}.runner-board{padding:10px;min-width:0;overflow:hidden}.runner-board>header,.section-head,.analytics-card>header,.my-bets>header{display:flex;justify-content:space-between;align-items:center;gap:10px}.runner-board>header b,.section-head b,.analytics-card>header b{font-size:16px}.runner-board>header span{font-size:9px;color:#7fa0b0}.runner-head{display:grid;grid-template-columns:44px 1fr 75px 80px;color:#7392a1;font-size:9px;padding:10px 5px;border-bottom:1px solid #14313d}.runner-list{display:grid;gap:7px;padding-top:8px}.runner-row{display:grid;grid-template-columns:44px 1fr 75px 80px;align-items:center;min-height:56px;padding:6px;border:1px solid #173847;border-radius:10px;background:#041017}.runner-row.leader{background:linear-gradient(90deg,#073e26,#06251d);border-color:#0dbd65}.runner-row .pos{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#103044;font-weight:900}.runner-name{display:flex;gap:7px;align-items:center;font-weight:900}.coin-logo{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--coin);color:#101010;font-size:10px}.runner-icon img{width:60px;height:46px;object-fit:contain}.gap{text-align:right;font-size:10px}.unified-betting,.odds-explorer{padding:14px}.bet-lock{border:1px solid #806400;color:#ffd34a;border-radius:9px;padding:8px 12px;font-size:10px;font-weight:900}.market-tabs,.explorer-tabs,.combo-tabs,.place-filter,.history-range{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.bet-dog-grid{display:grid;grid-template-columns:repeat(8,minmax(115px,1fr));gap:8px}.bet-dog-card{position:relative;min-width:0;min-height:175px;border:1px solid #214656;border-radius:12px;background:linear-gradient(180deg,#06151c,#030b10);color:#fff;padding:8px;cursor:pointer;overflow:hidden}.bet-dog-card:hover{border-color:var(--coin)}.bet-dog-card.selected{border:2px solid #ffd34a;box-shadow:0 0 0 2px #ffd34a22 inset}.bet-dog-card img{display:block;width:100%;height:104px;object-fit:contain}.bet-dog-card b{display:block;font-size:15px}.bet-dog-card small{color:#ffc826;font-weight:900}.lane-no{position:absolute;left:8px;top:8px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--coin);color:#080b0d;font-weight:900}.place-badge{position:absolute;right:8px;top:8px;padding:5px 8px;background:#fff;color:#111;border-radius:7px;font-size:10px;font-weight:900}.ticket-builder{display:grid;grid-template-columns:1.6fr 1fr .72fr .72fr 1fr;gap:10px;margin-top:12px}.ticket-builder>div,.balance-box,.my-bets{padding:12px;border:1px solid #1b3c4a;border-radius:11px;background:#041017}.ticket-picks{display:grid;grid-template-columns:1fr auto auto;gap:7px;align-items:center}.ticket-picks>span{grid-column:1/-1}.ticket-slots{display:flex;gap:7px;flex-wrap:wrap}.ticket-slot{min-width:86px;padding:8px;border:1px solid #224656;border-radius:8px}.ticket-slot span{font-size:9px;color:#7ea1b0}.ticket-slot strong{display:block;margin-top:3px}.ticket-picks button,.stake-step button,.quick-stake button,.my-bets button,.analytics-card button{border:1px solid #254a59;background:#07161d;color:#eaf2f5;border-radius:8px;padding:7px 9px;cursor:pointer}.stake-step{display:grid;grid-template-columns:38px 1fr 38px;margin-top:8px}.stake-step input{width:100%;border:1px solid #294b59;background:#02080c;color:#fff;text-align:center;font-weight:900}.quick-stake{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.quick-stake button.active{border-color:#f4b400;color:#ffd34a}.price-box strong,.payout-box strong{display:block;color:#ffd34a;font-size:25px;margin-top:13px}.place-unified{border:0;border-radius:11px;background:linear-gradient(#ffd149,#e9a900);color:#151000;font-weight:1000;font-size:16px;cursor:pointer}.place-unified:disabled{opacity:.35;cursor:not-allowed}.bet-foot{display:grid;grid-template-columns:280px minmax(0,1fr);gap:10px;margin-top:10px}.balance-box strong{display:block;font-size:28px;color:#85ddff;margin:7px 0}.balance-box small{color:#8ca8b5}.msg{margin-top:8px;font-size:11px;color:#8da8b5}.msg.ok{color:#19dc81}.msg.err{color:#ff6565}.ticket{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #13313d}.ticket b{font-size:11px}.ticket small{display:block;color:#809ba7;font-size:9px}.ticket .win{color:#16dc7e}.ticket .lose{color:#ff5c5c}.live-combo-rows{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:7px}.live-combo-rows button{border:1px solid #1b3d4b;background:#041118;color:#dfe9ec;border-radius:9px;padding:9px;text-align:left;cursor:pointer}.live-combo-rows strong{float:right;color:#ffd34a}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.analytics-card{padding:13px;min-width:0}.economy-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:10px}.economy-stats>div{padding:9px;border:1px solid #1a3a47;border-radius:9px}.economy-stats span{display:block;color:#7f9eab;font-size:9px}.economy-stats strong{display:block;margin-top:5px}.economy-explainer{margin-top:10px;padding:10px;background:#031016;border-radius:9px}.economy-explainer b{color:#ffd34a}.economy-explainer p{margin:5px 0;font-size:11px;color:#9db2ba;line-height:1.45}#winnerGraph{width:100%;height:auto;background:#031016;border-radius:9px}.winner-stats{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.table-scroll{overflow:auto;max-width:100%}table{width:100%;border-collapse:collapse;font-size:10px}th,td{padding:8px;border-bottom:1px solid #16333f;text-align:left;white-space:nowrap}th{color:#7995a2;font-size:9px}.race-detail{margin-top:8px;padding:9px;background:#031016;color:#9bb0b8;border-radius:8px;font-size:10px}.app-footer{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;color:#8ca3ad;font-size:10px}.app-footer button{border:1px solid #244451;background:#061219;color:#fff;border-radius:8px;padding:7px 10px}@media(max-width:1280px){.broadcast-grid{grid-template-columns:minmax(0,1fr) 270px}.bet-dog-grid{grid-template-columns:repeat(4,1fr)}.ticket-builder{grid-template-columns:1.4fr 1fr 1fr}.place-unified{min-height:64px}.analytics-grid{grid-template-columns:1fr}.live-combo-rows{grid-template-columns:repeat(4,1fr)}}@media(max-width:900px){.dogrun-app{padding:6px}.app-header{grid-template-columns:1fr auto}.main-nav{order:3;grid-column:1/-1;justify-content:center;margin-top:8px}.header-actions{justify-self:end}.race-status{grid-template-columns:repeat(3,1fr)}.race-status>div{border-bottom:1px solid #15323e}.broadcast-grid{grid-template-columns:1fr}.race-broadcast{min-height:580px}.runner-board{max-height:none}.race-toolbar{flex-direction:column}.dogbot-mini{max-width:none;min-width:0}.ticket-builder{grid-template-columns:1fr 1fr}.bet-foot{grid-template-columns:1fr}.live-combo-rows{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.app-header{display:flex;flex-wrap:wrap}.brand{width:100%}.header-actions{margin-left:auto}.main-nav{width:100%;overflow:auto}.race-status{grid-template-columns:repeat(2,1fr)}.race-status strong{font-size:17px}.race-broadcast{padding:6px;min-height:500px}.track-shell{min-height:430px}.dogbot-mini{display:none}.start-callout{font-size:11px}.broadcast-hud{max-width:calc(100% - 24px);overflow:auto}.track-caption{display:none}.bet-dog-grid{grid-template-columns:repeat(2,1fr)}.ticket-builder{grid-template-columns:1fr}.live-combo-rows{grid-template-columns:1fr}.economy-stats{grid-template-columns:repeat(2,1fr)}.runner-board{order:2}.app-footer{flex-direction:column;gap:8px;align-items:flex-start}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.voice-wave i{animation:none!important}}

/* v16.11 Space Race visual layer */
.dogrun-3d-stage{background:linear-gradient(#07101f 0 18%,#02070d 18% 100%)}
.track-shell{border-color:#284964;box-shadow:0 0 36px #2164a722,inset 0 0 50px #0008}
.space-podium[hidden]{display:none!important}.space-podium{position:absolute;inset:0;z-index:40;display:grid;align-content:center;justify-items:center;background:radial-gradient(circle at 50% 45%,#18254ae8,#02060bed 70%);animation:podiumIn .45s ease-out}.podium-title{font-size:clamp(28px,5vw,72px);font-weight:1000;letter-spacing:.08em;color:#ffd34a;text-shadow:0 0 30px #ffb000aa;margin-bottom:18px}.podium-grid{width:min(900px,92%);display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:14px;align-items:end}.podium-card{position:relative;min-height:230px;display:grid;justify-items:center;align-content:center;padding:14px;border-radius:16px;background:linear-gradient(180deg,#081724ee,#03090eef);border:2px solid #79909c;box-shadow:0 18px 60px #0009}.podium-card img{width:min(240px,85%);height:130px;object-fit:contain;filter:drop-shadow(0 16px 18px #0008)}.podium-card span{font-size:13px;letter-spacing:.12em;color:#bac9d1}.podium-card b{font-size:28px;margin-top:8px}.podium-card strong{color:#ffd34a;letter-spacing:.18em;margin-top:4px}.podium-card.first{min-height:285px;border-color:#ffd34a;box-shadow:0 0 45px #ffb00044,0 18px 60px #0009}.podium-card.second{border-color:#dce8ef}.podium-card.third{border-color:#c47a32}.celebration-layer{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 20% 15%,#ffd34a88 0 2px,transparent 3px),radial-gradient(circle at 80% 20%,#29dbe888 0 2px,transparent 3px),radial-gradient(circle at 50% 8%,#ff5a5a88 0 2px,transparent 3px);background-size:58px 58px,72px 72px,88px 88px;animation:stars 2s linear infinite}.runner-icon img,.bet-dog-card img{filter:drop-shadow(0 8px 12px #0008)}.bet-dog-card img{height:96px}.track-caption b{color:#62e8ff}.brand small{color:#65d6ff}.three-status{color:#63eaff!important}
@keyframes podiumIn{from{opacity:0;transform:scale(.98)}to{opacity:1;transform:none}}@keyframes stars{to{background-position:0 58px,0 72px,0 88px}}
@media(max-width:620px){.podium-grid{grid-template-columns:1fr 1fr 1fr;gap:5px}.podium-card{min-height:170px;padding:7px}.podium-card.first{min-height:205px}.podium-card img{height:78px}.podium-card b{font-size:18px}.podium-title{margin-bottom:8px}}

/* v16.11.2 — official results + coin-ship podium polish */
.winner-banner{border-color:#426b82;background:linear-gradient(135deg,#071621,#061018);transition:.2s ease}
.winner-banner.official{border-color:#f0b51d;background:linear-gradient(135deg,#2b2104,#0d1009);box-shadow:inset 0 0 30px #ffc92813}
.winner-banner.official strong{color:#ffd34a;text-shadow:0 0 18px #ffbd2866}
.winner-banner.previous{opacity:.82}
.runner-row.official-top:nth-child(1){border-color:#f0bd28;box-shadow:inset 0 0 22px #ffc92816}
.runner-row.official-top:nth-child(2){border-color:#b8c9d4}
.runner-row.official-top:nth-child(3){border-color:#b46e32}
.space-podium{overflow:hidden}
.space-podium::before,.space-podium::after{content:"";position:absolute;inset:-15%;pointer-events:none;background:
 radial-gradient(circle,#ffd65c 0 2px,transparent 3px) 0 0/74px 74px,
 radial-gradient(circle,#6be8ff 0 2px,transparent 3px) 30px 20px/94px 94px;
 opacity:.55;animation:podiumSpark 4s linear infinite}
.space-podium::after{transform:rotate(180deg);opacity:.28;animation-duration:6s}
.podium-kicker{position:relative;z-index:2;color:#79e9ff;font-size:11px;font-weight:900;letter-spacing:.25em;margin-bottom:5px}
.podium-title,.podium-grid{position:relative;z-index:2}
.podium-card small{margin-top:5px;color:#7795a4;font-size:9px;letter-spacing:.14em}
.podium-card.first::before{content:"★";position:absolute;top:10px;right:14px;color:#ffd34a;font-size:28px;animation:winnerPulse 1.1s ease-in-out infinite alternate}
.space-podium.celebrating .podium-card.first{animation:winnerCard .7s cubic-bezier(.2,.9,.3,1.2)}
@keyframes podiumSpark{to{transform:translate3d(30px,60px,0)}}
@keyframes winnerPulse{to{transform:scale(1.18);filter:brightness(1.35)}}
@keyframes winnerCard{0%{transform:translateY(30px) scale(.88);opacity:0}100%{transform:none;opacity:1}}
@media(max-width:620px){
  .podium-grid{grid-template-columns:1fr 1.12fr 1fr;gap:6px;width:96%}
  .podium-card{min-height:180px;padding:8px}.podium-card.first{min-height:215px}
  .podium-card img{height:90px}.podium-card b{font-size:20px}.podium-title{font-size:30px}
}


/* v16.11.2 — premium CG coin ship identity */
.bet-dog-card{position:relative;overflow:hidden;background:
  radial-gradient(circle at 50% 30%,color-mix(in srgb,var(--coin,#48d8ff) 15%,transparent),transparent 48%),
  linear-gradient(180deg,#071722,#031016 72%);min-height:182px;isolation:isolate}
.bet-dog-card::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 28%,rgba(255,255,255,.06) 45%,transparent 60%);transform:translateX(-120%);transition:transform .45s ease;pointer-events:none}
.bet-dog-card:hover::before,.bet-dog-card.selected::before{transform:translateX(120%)}
.bet-dog-card img{height:118px!important;width:100%;object-fit:contain;transform:scale(1.05);filter:drop-shadow(0 16px 16px #000b) drop-shadow(0 0 10px color-mix(in srgb,var(--coin,#49dfff) 25%,transparent));transition:transform .18s ease,filter .18s ease}
.bet-dog-card:hover img,.bet-dog-card.selected img{transform:scale(1.10) translateY(-2px);filter:drop-shadow(0 18px 18px #000c) drop-shadow(0 0 14px color-mix(in srgb,var(--coin,#49dfff) 42%,transparent))}
.runner-icon{width:76px!important;min-width:76px;display:grid;place-items:center}.runner-icon img{width:72px!important;height:46px!important;object-fit:contain;filter:drop-shadow(0 7px 8px #000c)}
.podium-card img{height:148px!important;width:min(280px,92%)!important;filter:drop-shadow(0 18px 20px #000b) drop-shadow(0 0 16px #ffd34a22)}
.podium-card.first img{height:174px!important;transform:scale(1.06)}
.track-shell{background:radial-gradient(circle at 50% 25%,#14283a 0,#07111d 45%,#02070d 100%)}
.three-status{border-color:#3cc7ee!important;background:#03131ddd!important;box-shadow:0 0 16px #24cdf329!important}
@media(max-width:900px){.bet-dog-card{min-height:164px}.bet-dog-card img{height:102px!important}.runner-icon{width:62px!important;min-width:62px}.runner-icon img{width:58px!important}}
@media(max-width:620px){.bet-dog-card{min-width:170px;min-height:158px}.bet-dog-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:6px}.bet-dog-card{flex:0 0 174px;scroll-snap-align:start}.podium-card img{height:92px!important}.podium-card.first img{height:108px!important}}


/* v16.12.3 — responsive pilot profile / XP / warp telemetry */
.race-profile-strip{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(220px,1.2fr) minmax(135px,.65fr) minmax(165px,.8fr) minmax(150px,.7fr) minmax(310px,1.45fr);gap:0;align-items:stretch;overflow:hidden}
.race-profile-strip>div{min-width:0;padding:10px 14px;border-right:1px solid var(--line)}
.race-profile-strip>div:last-child{border-right:0}
.pilot-profile{display:flex;align-items:center;gap:10px}.pilot-profile img{width:54px;height:54px;border-radius:12px;object-fit:cover;border:1px solid var(--gold-line);background:#02090d}
.pilot-profile span,.xp-meter>span,.telemetry-box>span,.profile-tex>span,.race-modules>span{display:block;color:#79a1b2;font-size:9px;letter-spacing:.16em}.pilot-profile strong{display:block;font-size:16px;margin:3px 0}.pilot-profile small{color:#9fc2cf}.pilot-profile small b{color:#ffd34a}
.xp-meter{display:flex;flex-direction:column;justify-content:center}.xp-track{height:10px;background:#02090d;border:1px solid #234452;border-radius:999px;overflow:hidden;margin:8px 0 5px}.xp-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,#19d989,#26dff0,#ffd34a);box-shadow:0 0 12px #20d6e577;transition:width .45s ease}.xp-meter small{color:#86a4b0}
.telemetry-box,.profile-tex{display:flex;flex-direction:column;justify-content:center}.telemetry-box strong,.profile-tex strong{font-size:24px;color:#eaf7fb;font-variant-numeric:tabular-nums;margin:3px 0}.telemetry-box small,.profile-tex small{color:#7f9da9;font-size:9px}.profile-tex strong{color:#77e4ff}
.race-modules{display:grid;grid-template-columns:1fr 1fr;gap:5px;align-content:center}.race-modules>span{grid-column:1/-1}.race-modules b{font-size:10px;font-weight:800;color:#cbe1e8;padding:6px 7px;border:1px solid #1b3d4a;border-radius:7px;background:#041219;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.duration-cell strong{display:flex;gap:5px;flex-wrap:wrap}.duration-cell .duration{min-width:64px}
@media(max-width:1450px){.race-profile-strip{grid-template-columns:1.2fr 1.2fr .75fr .9fr .85fr}.race-modules{grid-column:1/-1;border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr)}}
@media(max-width:1050px){.race-profile-strip{grid-template-columns:1fr 1fr 1fr}.race-profile-strip>div{border-bottom:1px solid var(--line)}.pilot-profile,.xp-meter,.profile-tex{grid-column:auto}.race-modules{grid-column:1/-1}}
@media(max-width:700px){.race-profile-strip{grid-template-columns:1fr 1fr}.pilot-profile,.xp-meter,.race-modules{grid-column:1/-1}.telemetry-box strong,.profile-tex strong{font-size:20px}.race-modules{grid-template-columns:1fr 1fr}.duration-cell .duration{min-width:54px;padding:7px 8px}.track-shell{min-height:390px}}
@media(max-width:470px){.race-profile-strip{grid-template-columns:1fr}.pilot-profile,.xp-meter,.telemetry-box,.profile-tex,.race-modules{grid-column:1}.race-modules{grid-template-columns:1fr 1fr}.broadcast-hud{max-width:calc(100% - 16px);overflow:auto}.camera-bar{max-width:calc(100% - 12px)}}

/* v16.12.3 cinematic physics + persistent rewards */
.space-leaderboard-panel{margin-top:12px;overflow:hidden}
.space-leaderboard-panel .section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.space-leaderboard-panel #leaderboardRefresh{border:1px solid rgba(244,180,0,.35);background:#07131a;color:#ffd047;border-radius:8px;padding:8px 12px;font-weight:800}
.leaderboard-summary{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:8px;margin:10px 0}
.leaderboard-summary>div{border:1px solid rgba(87,151,179,.18);background:linear-gradient(180deg,#07151d,#041017);padding:10px;border-radius:9px;min-width:0}
.leaderboard-summary span{display:block;color:#77a8bb;font-size:10px;letter-spacing:.11em}
.leaderboard-summary strong{display:block;color:#f5f8fa;font-size:16px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.space-leaderboard-table td,.space-leaderboard-table th{white-space:nowrap}
.space-leaderboard-table .rank{color:#ffc928;font-weight:900}.space-leaderboard-table .pilot{font-weight:850}.space-leaderboard-table .item{color:#78e5ff}
.space-leaderboard-table .ship-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:3px 7px}
.race-reward-overlay{position:absolute;inset:0;z-index:56;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle at 50% 55%,rgba(14,45,67,.28),rgba(0,0,0,.62) 70%)}
.race-reward-overlay[hidden]{display:none}.reward-panel{width:min(680px,88%);border:1px solid rgba(255,201,40,.55);border-radius:16px;background:linear-gradient(180deg,rgba(4,15,23,.96),rgba(2,8,12,.98));box-shadow:0 0 50px rgba(0,190,255,.16),0 0 80px rgba(255,187,35,.11);padding:20px}
.reward-kicker{text-align:center;color:#ffc928;letter-spacing:.18em;font-weight:900;font-size:12px}.reward-main{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.reward-main>div{border:1px solid rgba(86,158,187,.22);border-radius:12px;padding:16px;text-align:center;background:#06141c}.reward-main span{color:#75a6ba;font-size:10px;letter-spacing:.12em}.reward-main strong{display:block;margin-top:7px;color:#fff;font-size:clamp(21px,3vw,34px)}.reward-main small{display:block;margin-top:5px;color:#8fdff7}
.reward-progress{margin-top:14px}.reward-progress>span{display:block;color:#8fb8c8;font-size:10px;margin-bottom:6px}.reward-progress>div{height:10px;border-radius:999px;background:#041018;border:1px solid rgba(93,155,180,.22);overflow:hidden}.reward-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#1cc8ea,#ffc928);transition:width .7s ease}
body.cinema-mode.cinema-active .unified-betting,body.cinema-mode.cinema-active .odds-explorer,body.cinema-mode.cinema-active .analytics-grid,body.cinema-mode.cinema-active .space-leaderboard-panel,body.cinema-mode.cinema-active .runner-board,body.cinema-mode.cinema-active .race-profile-strip{display:none!important}
body.cinema-mode.cinema-active .broadcast-grid{grid-template-columns:1fr!important}body.cinema-mode.cinema-active .race-broadcast{min-height:min(88dvh,900px)}body.cinema-mode.cinema-active .track-shell{min-height:min(82dvh,820px);aspect-ratio:16/9}body.cinema-mode.cinema-active .camera-bar{opacity:.18}body.cinema-mode.cinema-active .space-podium{transform:scale(1.08)}
.three-status.physics-ready{border-color:rgba(39,215,243,.5);color:#92eeff}
@media(max-width:1100px){.leaderboard-summary{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.leaderboard-summary{grid-template-columns:repeat(2,1fr)}.reward-main{grid-template-columns:1fr}.reward-panel{padding:14px}.space-leaderboard-panel .table-scroll{overflow-x:auto}}


/* ============================================================
   v16.12.3 RESPONSIVE ARCHITECTURE RECOVERY
   Do not shrink the desktop dashboard; reorganize it.
   ============================================================ */
html{overflow-x:hidden}body{max-width:100vw;overflow-x:hidden}.dogrun-app{min-width:0;max-width:1920px;width:100%;padding:clamp(4px,1vw,12px)}
.app-header,.race-status,.race-profile-strip,.broadcast-grid,.race-broadcast,.runner-board,.unified-betting,.odds-explorer,.analytics-grid,.space-leaderboard-panel{min-width:0;max-width:100%}
.track-shell{width:100%;aspect-ratio:16/9;min-height:clamp(300px,47vw,720px);max-height:min(74dvh,820px)}
.dogrun-3d-stage,.dogrun-3d-stage canvas{width:100%!important;height:100%!important;min-width:0!important;max-width:100%!important}
.broadcast-grid{grid-template-columns:minmax(0,1fr) minmax(250px,320px);align-items:stretch;min-height:0}
.race-broadcast{min-height:0}.runner-board{max-height:none;overflow:visible}.runner-list{min-width:0}.runner-row{min-width:0}
.market-tabs button,.camera-bar button,.leaderboard-tabs button,.duration{min-height:44px;touch-action:manipulation}
.leaderboard-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.leaderboard-tabs button{border:1px solid #244452;background:#061219;color:#dce7eb;border-radius:9px;padding:8px 12px;font-weight:850;cursor:pointer}.leaderboard-tabs button.active{border-color:#c89200;color:#ffd34a;background:#171505}.leaderboard-note{margin:6px 0 10px;color:#789aaa;font-size:10px;line-height:1.4}
.race-modules em{font-style:normal;color:#53e4ff;border:1px solid #1d6374;border-radius:999px;padding:2px 7px;font-size:9px}

/* Tablet: board becomes full-width below the renderer. */
@media(max-width:1024px){
 .broadcast-grid{grid-template-columns:1fr!important;gap:8px}
 .race-broadcast{order:1}.runner-board{order:2}
 .track-shell{aspect-ratio:16/9;min-height:clamp(300px,56vw,590px);max-height:none}
 .runner-list{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.runner-row{grid-template-columns:38px minmax(0,1fr);gap:5px;min-height:78px}.runner-row .runner-icon,.runner-row .gap{grid-column:2}.runner-icon img{width:52px!important;height:38px!important}.gap{text-align:left}
 .runner-head{display:none}
 .race-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:8px}.dogbot-mini{min-width:0;max-width:none}.winner-banner{grid-column:1/-1}
 .race-profile-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
 .bet-dog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .ticket-builder{grid-template-columns:repeat(2,minmax(0,1fr))}.place-unified{min-height:60px}
}

/* Mobile: one-column information architecture, race first. */
@media(max-width:700px){
 body{background:#02070b}.dogrun-app{padding:4px;gap:6px}
 .app-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:6px;padding:7px!important;min-height:0}.brand{width:auto!important;min-width:0}.brand-logo{width:38px;height:38px;font-size:10px}.brand b{font-size:15px}.brand small{font-size:8px}.header-actions{display:flex;gap:4px}.header-actions button{min-height:40px;padding:7px 8px;font-size:0}.header-actions button:before{font-size:16px}.header-actions #soundBtn:before{content:'🔊'}.header-actions #fullscreenBtn:before{content:'⛶'}
 .main-nav{grid-column:1/-1!important;order:3!important;width:100%;display:grid!important;grid-template-columns:repeat(3,1fr);gap:4px;overflow:visible!important;margin:0!important}.main-nav a{min-height:40px;display:grid;place-items:center;padding:6px 4px;font-size:10px;text-align:center}
 .race-status{grid-template-columns:repeat(2,minmax(0,1fr))!important}.race-status>div{min-height:58px;padding:8px 9px;border-right:1px solid #15323e}.race-status span{font-size:8px}.race-status strong{font-size:clamp(14px,5vw,18px)!important;margin:3px 0}.race-status small{font-size:7px}.duration-cell{grid-column:1/-1}.duration-cell strong{display:flex;gap:5px;flex-wrap:wrap}.duration{flex:1;min-width:72px}
 .race-profile-strip{display:grid!important;grid-template-columns:1fr 1fr!important}.pilot-profile,.xp-meter,.race-modules{grid-column:1/-1!important}.race-profile-strip>div{padding:8px!important}.pilot-profile img{width:44px!important;height:44px!important}.telemetry-box strong,.profile-tex strong{font-size:17px!important}.race-modules{grid-template-columns:1fr 1fr!important;gap:5px!important}.race-modules b{font-size:9px;padding:6px!important}
 .broadcast-grid{display:flex!important;flex-direction:column!important;min-height:0!important}.race-broadcast{order:1!important;padding:4px!important;min-height:0!important}.runner-board{order:2!important;padding:7px!important}
 .race-toolbar{display:block!important;margin-bottom:4px}.dogbot-mini{display:none!important}.start-callout,.winner-banner{min-height:52px;padding:8px 10px}.start-callout>span{font-size:20px}.start-callout strong,.winner-banner strong{font-size:12px}.start-callout small,.winner-banner span{font-size:9px}
 .track-shell{width:100%!important;min-height:220px!important;height:auto!important;max-height:none!important;aspect-ratio:16/9!important;border-radius:10px}.track-caption,.three-status{display:none!important}
 .broadcast-hud{top:6px;left:6px;right:6px;max-width:none!important;overflow-x:auto!important;padding:4px}.broadcast-hud span{font-size:8px;padding:4px 5px;white-space:nowrap}
 .camera-bar{left:6px!important;right:6px!important;bottom:5px!important;transform:none!important;max-width:none!important;width:auto!important;justify-content:flex-start;overflow-x:auto;scroll-snap-type:x proximity;padding:4px}.camera-bar button{flex:0 0 auto;min-height:38px!important;padding:5px 9px!important;scroll-snap-align:start}
 .runner-board>header{align-items:flex-start}.runner-list{display:flex!important;overflow-x:auto!important;gap:6px;padding:6px 0 2px;scroll-snap-type:x proximity}.runner-row{flex:0 0 132px;display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;min-height:82px!important;padding:6px!important;scroll-snap-align:start}.runner-row .pos{width:28px;height:28px}.runner-name{font-size:10px}.coin-logo{width:22px;height:22px;font-size:8px}.runner-row .runner-icon{grid-column:1/2!important;grid-row:2}.runner-row .gap{grid-column:2!important;grid-row:2;font-size:8px!important;text-align:left!important}.runner-icon img{width:42px!important;height:32px!important}
 .unified-betting,.odds-explorer{padding:8px!important}.section-head{align-items:flex-start!important}.section-head b{font-size:13px!important}.section-head small{font-size:8px!important}.bet-lock{font-size:8px;padding:7px 8px}
 .market-tabs{display:grid!important;grid-template-columns:1fr!important;gap:5px}.market-tabs button{width:100%;padding:8px!important}
 .bet-dog-grid{display:flex!important;grid-template-columns:none!important;overflow-x:auto!important;gap:6px;scroll-snap-type:x mandatory;padding-bottom:5px}.bet-dog-card{flex:0 0 min(46vw,168px)!important;min-width:136px!important;min-height:150px!important;scroll-snap-align:start;padding:6px!important}.bet-dog-card img{height:88px!important}.bet-dog-card b{font-size:12px}.lane-no{width:26px;height:26px}
 .ticket-builder{display:grid!important;grid-template-columns:1fr!important;gap:6px}.ticket-builder>div{padding:8px}.price-box strong,.payout-box strong{font-size:21px;margin-top:6px}.place-unified{min-height:52px}.bet-foot{grid-template-columns:1fr!important;gap:6px}.balance-box strong{font-size:22px}
 .live-combo-rows{display:flex!important;overflow-x:auto!important;gap:6px}.live-combo-rows button{flex:0 0 175px}
 .analytics-grid{grid-template-columns:1fr!important}.analytics-card{padding:8px}.economy-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.table-scroll{overflow-x:auto!important;-webkit-overflow-scrolling:touch}
 .leaderboard-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.leaderboard-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.leaderboard-tabs button{flex:0 0 auto;font-size:9px;padding:7px 10px}
 .space-leaderboard-panel{padding:8px}.space-leaderboard-table{min-width:720px}.app-footer{font-size:8px;padding:8px}
 .reward-panel{width:94%;max-height:82dvh;overflow:auto}.podium-grid{grid-template-columns:1fr 1.15fr 1fr!important}.podium-card{min-width:0!important}.podium-card img{max-width:100%}
}
@media(max-width:380px){
 .race-status{grid-template-columns:1fr 1fr!important}.race-status>div:nth-child(3){grid-column:1/-1}.bet-dog-card{flex-basis:150px!important}.runner-row{flex-basis:124px}.race-modules{grid-template-columns:1fr!important}.leaderboard-summary{grid-template-columns:1fr 1fr!important}.track-shell{min-height:210px!important}
}
@media(orientation:landscape) and (max-height:520px) and (max-width:980px){
 .app-header{position:static}.track-shell{aspect-ratio:16/7!important;min-height:250px!important}.race-profile-strip{grid-template-columns:repeat(5,minmax(0,1fr))!important}.pilot-profile,.xp-meter{grid-column:auto!important}.race-modules{grid-column:1/-1!important}.runner-list{display:grid!important;grid-template-columns:repeat(4,1fr)!important;overflow:visible!important}.runner-row{min-width:0!important}
}
@media(prefers-reduced-motion:reduce){.voice-wave i{animation:none!important}.reward-progress i{transition:none!important}}


/* ===== v16.12.3 unique CG fleet + fictional shipyards ===== */
.runner-name{min-width:0}
.runner-name>span:last-child{display:grid;min-width:0}
.runner-name b{font:900 13px/1.1 system-ui;color:#f5fbff;letter-spacing:.03em}
.runner-name small{font:700 8px/1.2 system-ui;color:#79a9bb;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.bet-dog-card em{display:block;max-width:100%;font:800 8px/1.15 system-ui;color:#82b1c2;letter-spacing:.075em;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bet-dog-card .ship-spec{display:block;max-width:100%;font:700 7px/1.15 ui-monospace,SFMono-Regular,Consolas,monospace;color:#657f8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.space-podium [id$="Name"] small{display:block;margin-top:4px;color:#83b3c5;font:700 10px/1.25 system-ui;letter-spacing:.07em}
.space-podium [id$="Name"] b{display:block;color:#fff}
.three-status.physics-ready{max-width:min(94%,760px);white-space:normal}
@media(min-width:1200px){
  .runner-row{grid-template-columns:44px minmax(160px,1.35fr) 68px minmax(150px,.9fr)}
  .bet-dog-card{min-height:190px}
}
@media(max-width:720px){
  .runner-name small{font-size:7px}
  .bet-dog-card em{font-size:7px}
  .bet-dog-card .ship-spec{font-size:6.5px}
}
/* Keep sponsor/manufacturer copy subordinate to the race itself. */
.runner-row,.bet-dog-card{contain:layout paint style}

/* v16.12.4 hull redesign / start-grid cinematic */
.start-grid-cinematic{position:absolute;inset:12% 10% auto;z-index:7;display:grid;place-items:center;pointer-events:none;text-align:center;opacity:0;transform:translateY(-10px);transition:opacity .28s ease,transform .28s ease}
.start-grid-cinematic.active{opacity:1;transform:none}
.start-grid-cinematic small{letter-spacing:.28em;color:#7fdff2;font-weight:900;text-shadow:0 2px 14px #000}
.start-grid-cinematic b{margin-top:7px;font-size:clamp(18px,2.4vw,38px);letter-spacing:.16em;color:#fff;text-shadow:0 3px 20px #000}
.start-grid-cinematic strong{font-size:clamp(44px,8vw,110px);line-height:.95;color:#ffd34a;text-shadow:0 0 18px #f4b40099,0 4px 25px #000;margin:6px 0}
.start-grid-cinematic span{font-size:clamp(8px,1vw,13px);letter-spacing:.12em;color:#dcecf2;background:#02080bbd;border:1px solid #285062;border-radius:999px;padding:6px 12px}
.track-shell.grid-phase{box-shadow:inset 0 0 0 1px #29dbe855,0 0 38px #29dbe817}
.track-shell.grid-phase .broadcast-hud{opacity:.82}
.space-podium.celebrating .podium-title:after{content:" · TOP 3 CINEMATIC";color:#29dbe8;font-size:.58em}
@media(max-width:700px){.start-grid-cinematic{inset:10% 4% auto}.start-grid-cinematic span{max-width:94%;white-space:normal}.track-caption{bottom:52px}}


/* ===== v16.12.5 CG / track / LIVE SHIP BOARD refinement ===== */
.runner-board{position:relative;isolation:isolate;background:linear-gradient(180deg,rgba(5,20,28,.985),rgba(2,10,15,.99))}
.runner-board:before{content:"LIVE TELEMETRY · Δ DISTANCE IN KM";display:block;margin:7px 2px 2px;padding:5px 7px;border:1px solid #1d4b5b;border-radius:7px;color:#74dff1;background:#031117;font:800 8px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}
.runner-row{transition:border-color .2s ease,background .2s ease,transform .2s ease;box-shadow:inset 0 1px rgba(255,255,255,.025)}
.runner-row.leader{box-shadow:inset 3px 0 #13e17f,0 0 18px rgba(13,189,101,.08)}
.runner-row .gap{display:grid;gap:2px;justify-items:end;min-width:0}
.runner-row .gap b{font:900 9px/1.1 ui-monospace,SFMono-Regular,Consolas,monospace;color:#e8f7fb;white-space:nowrap}
.runner-row .gap small{display:block;font:800 8px/1.15 ui-monospace,SFMono-Regular,Consolas,monospace;color:#75b5c9;white-space:nowrap}
.runner-head{grid-template-columns:44px minmax(130px,1fr) 68px minmax(118px,.85fr)}
.runner-row{grid-template-columns:44px minmax(130px,1fr) 68px minmax(118px,.85fr)}
.track-shell{background:radial-gradient(circle at 50% 0,#102946 0,#02070d 62%,#010306 100%)}
.track-shell:after{content:"SCC ORBITAL SPEEDWAY · 8 LANE FIA-STYLE WARP GRID";position:absolute;right:10px;bottom:52px;z-index:4;padding:5px 8px;border:1px solid #235063;border-radius:7px;background:#02080cc7;color:#7fcfe2;font:800 8px/1.1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.06em;pointer-events:none}
.space-podium.celebrating{box-shadow:0 0 0 1px #f4b40044,0 0 60px #f4b40012}
.space-podium.celebrating .podium-card.first{transform:translateY(-4px)}

@media(max-width:700px){
  .broadcast-grid{display:flex!important;flex-direction:column!important}
  .race-broadcast{order:1!important}
  .runner-board{order:2!important;display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;max-width:none!important;max-height:none!important;overflow:visible!important;padding:7px!important;margin:0!important}
  .runner-board>header{position:sticky;top:0;z-index:3;background:#041117f2;padding:5px 2px 7px;border-bottom:1px solid #173746}
  .runner-board:before{margin-top:5px}
  .runner-head{display:grid!important;grid-template-columns:34px minmax(0,1fr) 50px 100px!important;padding:6px 3px!important;font-size:7px!important}
  .runner-list{display:grid!important;grid-template-columns:1fr!important;overflow:visible!important;gap:4px!important;padding:5px 0 0!important;scroll-snap-type:none!important}
  .runner-row{display:grid!important;grid-template-columns:34px minmax(0,1fr) 50px 100px!important;min-height:48px!important;width:100%!important;max-width:none!important;flex:none!important;padding:4px!important;scroll-snap-align:none!important}
  .runner-row .pos{width:27px!important;height:27px!important;font-size:10px}
  .runner-name{min-width:0;font-size:10px!important;gap:5px!important}.runner-name b{font-size:10px!important}.runner-name small{font-size:6.5px!important;max-width:100%;overflow:hidden;text-overflow:ellipsis}
  .coin-logo{width:21px!important;height:21px!important;font-size:7px!important}
  .runner-row .runner-icon{grid-column:3!important;grid-row:1!important;width:48px!important;min-width:48px!important}
  .runner-icon img{width:46px!important;height:34px!important}
  .runner-row .gap{grid-column:4!important;grid-row:1!important;justify-items:end!important;text-align:right!important;font-size:8px!important}
  .runner-row .gap b{font-size:7.5px!important}.runner-row .gap small{font-size:7px!important}
  .track-shell:after{display:none!important}
}
@media(max-width:390px){
  .runner-head,.runner-row{grid-template-columns:30px minmax(0,1fr) 43px 88px!important}
  .runner-row .runner-icon{width:42px!important;min-width:42px!important}.runner-icon img{width:40px!important;height:30px!important}
  .runner-row .gap b{font-size:7px!important}.runner-row .gap small{font-size:6.5px!important}
}

/* ===== v17.0 solid CG ship identity + all-resolution telemetry board ===== */
@media(min-width:1281px){.broadcast-grid{grid-template-columns:minmax(0,1fr) 360px!important}}
@media(min-width:901px) and (max-width:1280px){.broadcast-grid{grid-template-columns:minmax(0,1fr) 330px!important}}
.runner-board{container-type:inline-size;padding:10px!important;background:linear-gradient(180deg,#061821 0%,#020a0f 100%)!important}
.runner-board:before{content:"CG LIVE TELEMETRY · SPEED + Δ DISTANCE · SERVER ORDER";font-size:9px!important;padding:6px 8px!important;color:#8cecff!important}
.runner-board>header{min-height:38px}.runner-board>header b{font-size:17px!important;letter-spacing:.01em}.runner-board>header small{font-size:9px!important}.runner-board>header>span{font-size:8px!important;white-space:nowrap}
.runner-head{grid-template-columns:38px minmax(112px,1fr) 78px 104px!important;gap:6px;padding:8px 5px!important;font:800 8px/1.1 ui-monospace,SFMono-Regular,Consolas,monospace!important;letter-spacing:.05em}
.runner-row{grid-template-columns:38px minmax(112px,1fr) 78px 104px!important;gap:6px;min-height:66px!important;padding:7px 6px!important;overflow:hidden;background:linear-gradient(90deg,#05151d,#031016)!important}
.runner-row.leader{background:linear-gradient(90deg,#063d2a,#041b17)!important}
.runner-row .pos{width:34px!important;height:34px!important;font-size:12px!important}
.runner-name{min-width:0;gap:7px!important}.runner-name>span:last-child{min-width:0}.runner-name b{display:block;font-size:13px!important;line-height:1!important;letter-spacing:.03em}.runner-name small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7.5px!important;line-height:1.2!important;color:#78b7ca!important;margin-top:3px}
.coin-logo{flex:none;width:29px!important;height:29px!important;border:2px solid color-mix(in srgb,var(--coin) 80%,#fff);box-shadow:0 0 12px color-mix(in srgb,var(--coin) 28%,transparent),inset 0 0 0 2px #071017;font-weight:1000!important;font-size:10px!important}
.runner-icon{display:grid!important;place-items:center!important;min-width:0!important;overflow:visible!important}.runner-icon img{display:block!important;width:76px!important;height:52px!important;max-width:100%!important;object-fit:contain!important;filter:drop-shadow(0 7px 6px #000b) drop-shadow(0 0 7px color-mix(in srgb,var(--coin) 28%,transparent))!important}
.runner-row .gap{display:grid!important;align-content:center!important;justify-items:end!important;gap:5px!important;min-width:0!important;text-align:right!important}
.runner-row .gap b,.runner-row .gap small{display:grid!important;grid-template-columns:auto 1fr;gap:5px;align-items:center;width:100%;white-space:nowrap!important;font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important}
.runner-row .gap b{font-size:9px!important;color:#f3fbff!important}.runner-row .gap small{font-size:8px!important;color:#85d7e7!important}
.runner-row .gap i{font-style:normal;font-size:6.5px;letter-spacing:.06em;color:#668894;text-align:left}

@container (max-width:330px){
 .runner-head{grid-template-columns:32px minmax(96px,1fr) 63px 86px!important;gap:4px!important}
 .runner-row{grid-template-columns:32px minmax(96px,1fr) 63px 86px!important;gap:4px!important;padding:6px 4px!important}
 .runner-icon img{width:61px!important;height:44px!important}.runner-name b{font-size:11px!important}.runner-name small{font-size:7px!important}
 .runner-row .gap b{font-size:8px!important}.runner-row .gap small{font-size:7.5px!important}.runner-row .gap i{display:none}
}

@media(max-width:900px){
 .broadcast-grid{display:flex!important;flex-direction:column!important;min-height:0!important}.race-broadcast{order:1!important}.runner-board{order:2!important;width:100%!important;max-width:100%!important;overflow:visible!important}
 .runner-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;overflow:visible!important;padding-top:7px!important}
 .runner-head{display:none!important}
 .runner-row{display:grid!important;grid-template-columns:34px minmax(0,1fr) 76px!important;grid-template-rows:auto auto!important;min-height:80px!important;width:100%!important;max-width:100%!important;padding:7px!important;gap:4px 6px!important}
 .runner-row .pos{grid-column:1;grid-row:1;width:31px!important;height:31px!important}.runner-name{grid-column:2;grid-row:1}.runner-icon{grid-column:3!important;grid-row:1/3!important;width:auto!important;min-width:0!important}.runner-icon img{width:72px!important;height:54px!important}
 .runner-row .gap{grid-column:1/3!important;grid-row:2!important;display:flex!important;justify-content:flex-start!important;align-items:center!important;gap:10px!important;text-align:left!important}
 .runner-row .gap b,.runner-row .gap small{display:flex!important;width:auto!important;gap:4px!important;font-size:9px!important}.runner-row .gap i{display:inline!important;font-size:6.5px!important}
}
@media(max-width:560px){
 .runner-board{padding:7px!important}.runner-board:before{font-size:8px!important}.runner-board>header b{font-size:16px!important}
 .runner-list{grid-template-columns:1fr!important;gap:5px!important}
 .runner-row{grid-template-columns:34px minmax(0,1fr) 104px!important;grid-template-rows:1fr!important;min-height:64px!important;align-items:center!important;padding:6px!important}
 .runner-row .pos{grid-column:1;grid-row:1}.runner-name{grid-column:2;grid-row:1}.runner-icon{grid-column:3!important;grid-row:1!important;justify-self:end!important}.runner-icon img{width:96px!important;height:56px!important}
 .runner-row .gap{grid-column:2/4!important;grid-row:2!important;display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:7px!important;padding:2px 0 0!important}
 .runner-row .gap b,.runner-row .gap small{display:grid!important;grid-template-columns:auto 1fr!important;gap:5px!important;width:100%!important;padding:4px 6px;border:1px solid #173b49;border-radius:6px;background:#020b10;font-size:9px!important}
 .runner-row .gap small{color:#91e5f3!important}.runner-row .gap i{display:inline!important;font-size:7px!important}
 .runner-name b{font-size:12px!important}.runner-name small{font-size:8px!important}.coin-logo{width:28px!important;height:28px!important}
}
@media(max-width:390px){
 .runner-row{grid-template-columns:31px minmax(0,1fr) 86px!important;min-height:62px!important}.runner-icon img{width:82px!important;height:50px!important}
 .runner-row .gap{grid-template-columns:1fr 1fr!important}.runner-row .gap b,.runner-row .gap small{font-size:8.5px!important;padding:4px!important}.runner-row .gap i{font-size:6.5px!important}
}


/* ============================================================
   v17.0 — ONE-SCREEN RACE COMPOSITION + CLEAN CG TELEMETRY
   Desktop/fullscreen keeps the two top scoreboards, race video and
   LIVE SHIP BOARD inside one viewport. Mobile uses a compact 2x4 board.
   ============================================================ */
.coin-logo{overflow:hidden;border:1px solid color-mix(in srgb,var(--coin) 72%,#fff 12%);background:#02080d;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--coin) 16%,transparent),0 0 12px color-mix(in srgb,var(--coin) 22%,transparent)}
.coin-logo .coin-svg{width:21px;height:21px;display:block}.runner-name small{display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.runner-head{grid-template-columns:42px minmax(112px,1fr) 82px minmax(118px,.82fr);gap:5px}.runner-row{grid-template-columns:42px minmax(112px,1fr) 82px minmax(118px,.82fr);gap:5px;min-height:58px}.runner-icon{display:grid;place-items:center}.runner-icon img{width:72px;height:44px}.gap{display:grid;gap:2px;justify-items:end;font-variant-numeric:tabular-nums}.gap b,.gap small{display:grid;grid-template-columns:auto 1fr;gap:5px;align-items:center;white-space:nowrap}.gap i{font-style:normal;color:#6e9aaa;font-size:7px;letter-spacing:.09em}.gap b{font-size:10px;color:#f5fbff}.gap small{font-size:9px;color:#7de6ff}
.broadcast-grid{grid-template-columns:minmax(0,1fr) clamp(340px,22vw,390px)}.runner-board{display:flex;flex-direction:column}.runner-list{min-height:0;flex:1}.race-broadcast{min-height:0}.track-shell{background:#02070c}
.track-caption b{color:#7deaff}.track-caption span{color:#b4c7d0}

/* Keep the actual race area within the first desktop viewport. */
@media(min-width:1100px){
  .broadcast-grid{height:clamp(500px,calc(100dvh - 292px),760px);min-height:500px}
  .race-broadcast{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr)}
  .track-shell{height:100%;min-height:0;max-height:none;aspect-ratio:auto}
  .runner-board{height:100%;overflow:hidden}
  .runner-list{display:grid;grid-template-rows:repeat(8,minmax(0,1fr));overflow:hidden}
  .runner-row{min-height:0}
}
@media(min-width:1100px) and (max-height:900px){
  .app-header{min-height:54px;padding:5px 10px}.brand-logo{width:38px;height:38px}.brand b{font-size:17px}.main-nav a,.header-actions button{padding:7px 10px}
  .race-status>div{min-height:58px;padding:7px 10px}.race-status strong{font-size:17px;margin:2px 0}.race-status small{font-size:8px}
  .race-profile-strip>div{padding:6px 9px}.pilot-profile img{width:42px;height:42px}.telemetry-box strong,.profile-tex strong{font-size:19px}.race-modules b{padding:4px 6px;font-size:8px}
  .race-toolbar{margin-bottom:5px}.dogbot-mini{padding:5px 8px}.dogbot-mini img{width:48px;height:48px}.dogbot-mini p{font-size:10px;margin:2px 0}.start-callout,.winner-banner{padding:7px 10px}.start-callout>span{font-size:22px}
  .broadcast-grid{height:calc(100dvh - 238px);min-height:430px}
}

/* Browser fullscreen = dedicated race cockpit. Betting/analytics stay below in normal mode. */
html:fullscreen body{overflow:hidden;background:#02070b}html:fullscreen .dogrun-app{height:100dvh;max-height:100dvh;padding:4px;gap:4px;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden}
html:fullscreen .app-header,html:fullscreen .unified-betting,html:fullscreen .odds-explorer,html:fullscreen .analytics-grid,html:fullscreen .space-leaderboard-panel,html:fullscreen .app-footer{display:none!important}
html:fullscreen .race-status>div{min-height:50px;padding:5px 8px}html:fullscreen .race-status strong{font-size:15px;margin:2px 0}html:fullscreen .race-status span,html:fullscreen .race-status small{font-size:7px}
html:fullscreen .race-profile-strip>div{padding:4px 8px;min-height:48px}html:fullscreen .pilot-profile img{width:38px;height:38px}html:fullscreen .pilot-profile strong{font-size:13px}html:fullscreen .xp-track{margin:4px 0;height:7px}html:fullscreen .telemetry-box strong,html:fullscreen .profile-tex strong{font-size:18px}html:fullscreen .race-modules b{padding:3px 5px;font-size:8px}
html:fullscreen .broadcast-grid{height:100%;min-height:0;grid-template-columns:minmax(0,1fr) clamp(330px,22vw,390px);gap:4px}
html:fullscreen .race-broadcast{height:100%;padding:4px;display:grid;grid-template-rows:auto minmax(0,1fr)}html:fullscreen .race-toolbar{min-height:0;margin-bottom:4px}html:fullscreen .dogbot-mini{min-width:0;padding:4px 6px}html:fullscreen .dogbot-mini img{width:42px;height:42px}html:fullscreen .dogbot-mini p{font-size:9px;margin:1px 0}html:fullscreen .start-callout,html:fullscreen .winner-banner{padding:5px 8px}html:fullscreen .start-callout>span{font-size:20px}
html:fullscreen .track-shell{height:100%;min-height:0;max-height:none;aspect-ratio:auto}html:fullscreen .runner-board{height:100%;overflow:hidden;padding:6px}html:fullscreen .runner-list{display:grid;grid-template-rows:repeat(8,minmax(0,1fr));gap:4px;overflow:hidden}html:fullscreen .runner-row{min-height:0;padding:4px}html:fullscreen .runner-icon img{height:36px}html:fullscreen .camera-bar button{padding:5px 7px;min-height:30px}

/* Tablet/mobile: render first, board immediately under it; telemetry never clipped. */
@media(max-width:1024px){
  .broadcast-grid{height:auto;grid-template-columns:1fr!important}.race-broadcast{height:auto}.track-shell{aspect-ratio:16/9;min-height:0;max-height:none}.runner-board{height:auto}
  .runner-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.runner-row{grid-template-columns:34px minmax(0,1fr) minmax(88px,.75fr);grid-template-areas:'pos name gap' 'pos icon gap';gap:2px 6px;min-height:64px}.runner-row .pos{grid-area:pos;width:30px;height:30px}.runner-name{grid-area:name}.runner-icon{grid-area:icon;justify-content:start}.runner-icon img{width:48px;height:28px}.gap{grid-area:gap;align-self:center}.runner-head{display:none}
}
@media(max-width:560px){
  .race-status{grid-template-columns:repeat(2,minmax(0,1fr))}.race-status>div{min-height:58px;padding:7px 8px}.race-status strong{font-size:15px}.race-profile-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.race-profile-strip>div{padding:7px 8px}.race-modules{grid-template-columns:1fr 1fr}
  .race-toolbar{display:none}.track-shell{aspect-ratio:16/10;min-height:235px}.broadcast-hud{top:6px;left:6px;max-width:calc(100% - 12px);padding:3px}.broadcast-hud span{font-size:8px;padding:4px 5px}.camera-bar{bottom:5px;padding:3px}.camera-bar button{padding:5px 7px;min-height:30px}.track-caption{display:none}
  .runner-board{padding:6px}.runner-board>header b{font-size:13px}.runner-board>header span{display:none}.runner-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.runner-row{grid-template-columns:28px minmax(0,1fr) minmax(70px,.78fr);min-height:58px;padding:4px}.runner-row .pos{width:26px;height:26px;font-size:10px}.coin-logo{width:24px;height:24px}.coin-logo .coin-svg{width:17px;height:17px}.runner-name{gap:4px;font-size:10px}.runner-name small{font-size:6px;max-width:72px}.runner-icon{display:none}.runner-row{grid-template-areas:'pos name gap';}.gap b{font-size:8px}.gap small{font-size:7px}.gap i{font-size:6px}
}

/* Mobile fullscreen: both top scoreboards + race video + all 8 board rows fit together. */
@media(max-width:720px){
  html:fullscreen .dogrun-app{grid-template-rows:auto auto minmax(0,1fr)}
  html:fullscreen .race-status{grid-template-columns:repeat(3,minmax(0,1fr))}html:fullscreen .race-status>div{min-height:40px;padding:3px 4px}html:fullscreen .race-status strong{font-size:11px}html:fullscreen .race-status span,html:fullscreen .race-status small{font-size:5.5px;letter-spacing:.06em}
  html:fullscreen .race-profile-strip{grid-template-columns:repeat(3,minmax(0,1fr))}html:fullscreen .race-profile-strip>div{min-height:38px;padding:3px 4px}html:fullscreen .pilot-profile img{width:28px;height:28px}html:fullscreen .pilot-profile strong{font-size:10px}html:fullscreen .pilot-profile span,html:fullscreen .xp-meter>span,html:fullscreen .telemetry-box>span,html:fullscreen .profile-tex>span,html:fullscreen .race-modules>span{font-size:5.5px}html:fullscreen .telemetry-box strong,html:fullscreen .profile-tex strong{font-size:12px}html:fullscreen .xp-meter small,html:fullscreen .telemetry-box small,html:fullscreen .profile-tex small{display:none}html:fullscreen .race-modules{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px}html:fullscreen .race-modules>span{display:none}html:fullscreen .race-modules b{font-size:6px;padding:2px 3px}
  html:fullscreen .broadcast-grid{grid-template-columns:1fr!important;grid-template-rows:minmax(190px,1.18fr) minmax(170px,.82fr);gap:3px}
  html:fullscreen .race-broadcast{padding:2px;display:block;min-height:0}html:fullscreen .race-toolbar{display:none!important}html:fullscreen .track-shell{height:100%;min-height:0;aspect-ratio:auto}
  html:fullscreen .runner-board{padding:4px;min-height:0}html:fullscreen .runner-board>header{min-height:24px}html:fullscreen .runner-board>header b{font-size:11px}html:fullscreen .runner-board>header small{font-size:6px}html:fullscreen .runner-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:3px}html:fullscreen .runner-row{grid-template-columns:24px minmax(0,1fr) minmax(68px,.85fr);grid-template-areas:'pos name gap';min-height:0;padding:3px}html:fullscreen .runner-icon{display:none}html:fullscreen .runner-row .pos{width:22px;height:22px;font-size:9px}html:fullscreen .coin-logo{width:21px;height:21px}html:fullscreen .coin-logo .coin-svg{width:15px;height:15px}html:fullscreen .runner-name{font-size:9px}html:fullscreen .runner-name small{display:none}html:fullscreen .gap b{font-size:7px}html:fullscreen .gap small{font-size:6.5px}html:fullscreen .gap i{font-size:5.5px}
}


/* ==========================================================================\n   v17.0 CG WEBP FLEET / BROADCAST RESPONSIVE OVERRIDES\n   ========================================================================== */
:root{--ship-size:clamp(92px,11.5vw,220px);--ship-x:0px;--ship-y:0px;--ship-z:0px;--ship-scale:1;--ship-bank:0deg;--ship-pitch:0deg;--ship-yaw:0deg;--ship-heading:0deg;--warp:.55}
#dogRun3D{position:relative;isolation:isolate;overflow:hidden}
#dogRun3D>canvas{position:absolute;inset:0;z-index:1}
.cg-fleet-layer{position:absolute;inset:0;z-index:6;overflow:hidden;perspective:1200px;perspective-origin:50% 45%;transform-style:preserve-3d;pointer-events:none;contain:layout paint style;isolation:isolate}
.cg-ship{--accent:255 255 255;position:absolute;left:50%;top:50%;width:var(--ship-size);aspect-ratio:1;margin:0;transform-origin:50% 54%;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform,filter;pointer-events:none;transform:translate3d(var(--ship-x),var(--ship-y),var(--ship-z)) translate(-50%,-50%) rotateX(var(--ship-pitch)) rotateY(var(--ship-yaw)) rotateZ(calc(var(--ship-heading) + var(--ship-bank))) scale(var(--ship-scale));filter:drop-shadow(0 14px 14px rgb(0 0 0/.55)) drop-shadow(0 0 10px rgb(var(--accent)/.32))}
.cg-ship img{display:block;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none;backface-visibility:hidden;transform:translateZ(1px);filter:saturate(1.06) contrast(1.05);opacity:1}
.cg-ship::before{content:"";position:absolute;z-index:-1;inset:28% 58% 30% -16%;border-radius:50%;background:radial-gradient(ellipse at 78% 50%,rgb(var(--accent)/.66) 0 11%,rgb(var(--accent)/.22) 27%,transparent 70%);filter:blur(8px);opacity:var(--warp);transform:translateZ(-12px) scaleX(1.35)}
.cg-ship::after{content:"";position:absolute;z-index:-2;left:-40%;top:48%;width:56%;height:4.5%;border-radius:999px;background:linear-gradient(90deg,transparent,rgb(var(--accent)/.10),rgb(var(--accent)/.76));filter:blur(2px);opacity:calc(.18 + var(--warp)*.64);transform:translateZ(-16px) skewX(-16deg) scaleX(calc(.62 + var(--warp)));transform-origin:100% 50%}
.cg-ship figcaption{position:absolute;left:50%;bottom:-1.1rem;translate:-50% 0;display:none;min-width:110px;text-align:center;padding:.18rem .38rem;border:1px solid rgb(var(--accent)/.48);background:rgb(2 9 15/.88);border-radius:6px;white-space:nowrap;box-shadow:0 4px 12px #0008}
.cg-ship figcaption b{display:block;color:#f5fbff;font-size:clamp(8px,.62vw,11px);letter-spacing:.08em}.cg-ship figcaption span{display:block;color:rgb(var(--accent));font-size:7px;letter-spacing:.08em}
.cg-ship.is-leader{filter:drop-shadow(0 16px 18px #0008) drop-shadow(0 0 14px rgb(var(--accent)/.64)) brightness(1.08)}
@media(min-width:1450px){.cg-ship[data-phase="WAITING"] figcaption,.cg-ship[data-phase="COUNTDOWN"] figcaption{display:block}}

/* F1-like telemetry: values remain readable before manufacturer decoration. */
.runner-board{min-width:0}.runner-row{grid-template-columns:minmax(38px,.44fr) minmax(120px,1.55fr) minmax(76px,1fr) minmax(116px,1.15fr)!important;align-items:center;gap:clamp(5px,.55vw,10px)}
.runner-name{min-width:0}.runner-name>span:last-child{min-width:0}.runner-name b{font-size:clamp(12px,.88vw,16px)!important}.runner-name small{font-size:clamp(7px,.48vw,9px)!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.runner-icon img{width:clamp(64px,5.4vw,98px)!important;max-height:58px!important;object-fit:contain;filter:drop-shadow(0 5px 6px #000b) drop-shadow(0 0 7px var(--coin))}.runner-telemetry strong{font-size:clamp(10px,.72vw,13px)!important}.runner-telemetry small{font-size:clamp(8px,.56vw,10px)!important;line-height:1.25!important}

/* One-screen desktop broadcast: status + profile + race + live board fit into 100dvh. */
@media(min-width:1100px) and (min-height:620px){
  html:fullscreen .dogrun-app,.dogrun-app:has(.track-shell:fullscreen){height:100dvh;overflow:hidden;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:7px;padding:7px}
  html:fullscreen .app-header,html:fullscreen .unified-betting,html:fullscreen .odds-explorer,html:fullscreen .analytics-grid,html:fullscreen .space-leaderboard-panel,html:fullscreen .app-footer{display:none!important}
  html:fullscreen .race-status{min-height:0}.race-status>div{padding-block:clamp(7px,1vh,13px)}
  html:fullscreen .race-profile-strip{min-height:0}.race-profile-strip>*{padding-block:clamp(6px,.9vh,11px)}
  html:fullscreen .broadcast-grid{min-height:0;height:100%;grid-template-columns:minmax(0,1fr) minmax(278px,22vw);gap:7px}
  html:fullscreen .race-broadcast,html:fullscreen .track-shell,html:fullscreen #dogRun3D{min-height:0;height:100%}
  html:fullscreen .race-toolbar{grid-template-columns:minmax(240px,1fr) minmax(230px,.9fr) minmax(260px,.9fr)}
  html:fullscreen .runner-board{height:100%;min-height:0;overflow:hidden}.runner-list{min-height:0;overflow:auto}
}

/* Tablet + phone: race video first, board remains fully legible with no horizontal scrolling. */
@media(max-width:1099px){
  .broadcast-grid{grid-template-columns:1fr!important}.runner-board{order:2}.race-broadcast{order:1}.track-shell{min-height:clamp(360px,58vw,650px)}
  .runner-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px!important}.runner-row{grid-template-columns:34px minmax(92px,1fr) 66px minmax(94px,1fr)!important;min-width:0}
  .runner-head{display:none!important}.runner-icon img{width:62px!important}.runner-board>header span{font-size:9px}
}
@media(max-width:640px){
  .dogrun-app{padding:5px;gap:6px}.app-header{padding:7px}.main-nav{display:none}.header-actions button{font-size:10px;padding:8px}
  .race-status{grid-template-columns:repeat(3,minmax(0,1fr))!important}.race-status>div{padding:7px 8px!important}.race-status span,.race-profile-strip span{font-size:8px!important}.race-status strong{font-size:clamp(14px,4vw,20px)!important}.race-status small{font-size:7px!important}.race-status .duration-cell{grid-column:span 3}
  .race-profile-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pilot-profile,.xp-meter,.race-modules{grid-column:span 2!important}.race-profile-strip>*{padding:7px 8px!important}.race-modules{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .race-toolbar{grid-template-columns:1fr!important}.dogbot-mini{display:none!important}.winner-banner,.start-callout{min-height:54px}.track-shell{min-height:clamp(330px,84vw,470px)}
  .camera-bar{overflow-x:auto;justify-content:flex-start;scrollbar-width:none}.camera-bar button{flex:0 0 auto;font-size:8px;padding:8px 10px}
  :root{--ship-size:clamp(92px,27vw,142px)}
  .runner-list{grid-template-columns:1fr!important}.runner-row{grid-template-columns:36px minmax(98px,1fr) 72px minmax(104px,1fr)!important;padding:8px!important}.runner-icon img{width:68px!important}.runner-name b{font-size:13px!important}.runner-telemetry strong{font-size:11px!important}.runner-telemetry small{font-size:9px!important}
}
@media(max-width:390px){.runner-row{grid-template-columns:34px minmax(86px,1fr) 60px minmax(94px,1fr)!important;gap:4px!important}.runner-icon img{width:58px!important}.runner-name small{max-width:90px}.track-shell{min-height:325px}}
@media(prefers-reduced-motion:reduce){.cg-ship,.cg-ship::before,.cg-ship::after{animation:none!important;transition:none!important}}


/* v17.0.1 — lane-locked CG placement + always-readable SPEED / DISTANCE telemetry */
.broadcast-grid{grid-template-columns:minmax(0,1fr) clamp(350px,24vw,420px)}
.runner-head{grid-template-columns:38px minmax(108px,1.15fr) 74px minmax(138px,1.28fr)!important}
.runner-row{grid-template-columns:38px minmax(108px,1.15fr) 74px minmax(138px,1.28fr)!important;overflow:hidden}
.runner-telemetry{display:grid!important;grid-template-columns:1fr 1fr;grid-template-areas:"speed dist" "gap gap";gap:4px 6px;justify-items:stretch!important;text-align:left!important;min-width:0}
.runner-telemetry>b{grid-area:speed}.runner-telemetry>small{grid-area:dist}.runner-telemetry>em{grid-area:gap}
.runner-telemetry>b,.runner-telemetry>small,.runner-telemetry>em{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px;min-width:0;margin:0;padding:4px 6px;border:1px solid #173b49;border-radius:6px;background:#020b10;font-style:normal;white-space:nowrap}
.runner-telemetry i{font-style:normal;color:#6fa8bb;font-size:7px;letter-spacing:.08em}.runner-telemetry strong{font-size:10px;color:#f8fcff;overflow:visible;text-overflow:clip}.runner-telemetry em{font-size:8px;color:#7de6ff}
.runner-row.leader .runner-telemetry>b,.runner-row.leader .runner-telemetry>small,.runner-row.leader .runner-telemetry>em{border-color:#15966388;background:#05261c}
@media(max-width:1100px){.broadcast-grid{grid-template-columns:minmax(0,1fr) clamp(325px,32vw,380px)}}
@media(max-width:760px){
  :root{--ship-size:clamp(78px,21vw,118px)}
  .broadcast-grid{grid-template-columns:1fr}
  .runner-row{grid-template-columns:32px minmax(88px,1fr) 58px minmax(122px,1.25fr)!important}
  .runner-telemetry strong{font-size:9px}.runner-telemetry em{font-size:7.5px}
}
@media(max-width:430px){
  :root{--ship-size:clamp(70px,20vw,96px)}
  .runner-row{grid-template-columns:30px minmax(82px,1fr) minmax(116px,1.15fr)!important;grid-template-areas:"pos name telemetry"!important}
  .runner-icon{display:none!important}.runner-row .pos{grid-area:pos}.runner-name{grid-area:name}.runner-telemetry{grid-area:telemetry!important}
  .runner-telemetry>b,.runner-telemetry>small,.runner-telemetry>em{padding:3px 4px}.runner-telemetry i{font-size:6px}.runner-telemetry strong{font-size:8.5px}.runner-telemetry em{font-size:7px}
}
html:fullscreen .broadcast-grid{grid-template-columns:minmax(0,1fr) clamp(350px,24vw,420px)}
@media(max-width:760px){html:fullscreen .broadcast-grid{grid-template-columns:1fr!important;grid-template-rows:minmax(190px,1.15fr) minmax(190px,.85fr)}}

/* ===== v17.0.4 HYPE BOT + TRUE 8-LANE START GRID + 3D SHIP FOCUS ===== */
.start-grid-cinematic{inset:clamp(54px,7vh,86px) 16% auto!important;display:grid!important;grid-template-columns:auto auto;grid-template-areas:'kicker title' 'count count' 'roster roster';justify-content:center;align-items:center;gap:4px 16px;padding:8px 14px;border:1px solid #2a6577;border-radius:14px;background:linear-gradient(180deg,rgba(2,11,17,.92),rgba(2,8,13,.70));backdrop-filter:blur(5px);box-shadow:0 12px 38px #0008,0 0 24px #21d9ff12;max-width:min(920px,84vw);margin-inline:auto}
.start-grid-cinematic small{grid-area:kicker;font-size:clamp(8px,.72vw,11px)!important;letter-spacing:.20em!important;white-space:nowrap}
.start-grid-cinematic b{grid-area:title;margin:0!important;font-size:clamp(14px,1.55vw,24px)!important;letter-spacing:.13em!important;white-space:nowrap}
.start-grid-cinematic strong{grid-area:count;margin:2px 0 3px!important;font-size:clamp(30px,4.8vw,68px)!important;line-height:.88!important;letter-spacing:.05em}
.start-grid-cinematic span{grid-area:roster;font:850 clamp(8px,.82vw,12px)/1.25 ui-monospace,SFMono-Regular,Consolas,monospace!important;white-space:normal!important;max-width:min(880px,80vw)!important;text-align:center}
.track-shell.grid-phase .cg-ship{filter:none!important}
.track-shell.grid-phase .cg-ship img{filter:drop-shadow(0 8px 9px #000a) drop-shadow(0 0 8px rgb(var(--accent)/.35))!important}
.track-shell.grid-phase .track-caption{opacity:.72}

.ship-focus-btn{appearance:none;border:1px solid #24566a;background:linear-gradient(180deg,#12364a,#082235);color:#fff;font:900 12px/1 ui-monospace,SFMono-Regular,Consolas,monospace;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;background-clip:padding-box}
.ship-focus-btn:hover,.ship-focus-btn:focus-visible{transform:scale(1.07);border-color:var(--coin,#62dcff);box-shadow:0 0 0 2px color-mix(in srgb,var(--coin,#62dcff) 30%,transparent),0 0 18px color-mix(in srgb,var(--coin,#62dcff) 25%,transparent);outline:none}
.runner-row.leader .ship-focus-btn{border-color:#16df83;color:#dffff0}
.runner-board>header span{color:#7fe9ff!important;font-size:clamp(7px,.58vw,10px)!important;letter-spacing:.06em}
.runner-telemetry>em strong{color:#ffd55d;font-weight:950}
.runner-telemetry>b strong,.runner-telemetry>small strong{font-size:clamp(9px,.7vw,12px)!important}
.runner-icon img{object-fit:contain!important;filter:drop-shadow(0 5px 5px #000b) drop-shadow(0 0 8px color-mix(in srgb,var(--coin,#76ddff) 45%,transparent))!important}

/* Track-only fullscreen is intentional when a board position number is clicked. */
.track-shell:fullscreen{width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;aspect-ratio:auto!important;border-radius:0!important;background:#01060b!important}
.track-shell:fullscreen .dogrun-3d-stage{height:100%!important}
.track-shell:fullscreen .camera-bar{bottom:12px!important;max-width:calc(100vw - 24px)!important}
.track-shell:fullscreen .broadcast-hud{top:12px!important;left:12px!important}
.track-shell:fullscreen .start-grid-cinematic{top:74px!important}
.track-shell:fullscreen .track-caption{bottom:64px!important}

@media(max-width:700px){
  .start-grid-cinematic{inset:52px 5% auto!important;max-width:90vw!important;padding:6px 8px!important;gap:3px 7px!important}
  .start-grid-cinematic small{font-size:7px!important}.start-grid-cinematic b{font-size:12px!important}.start-grid-cinematic strong{font-size:clamp(28px,10vw,44px)!important}.start-grid-cinematic span{font-size:7px!important;max-width:86vw!important}
  .runner-board>header span{display:block!important;font-size:7px!important}.runner-head span:first-child:after{content:' VIEW';font-size:.8em;color:#6acfe3}
  .ship-focus-btn{font-size:10px!important;min-width:28px!important;min-height:28px!important}
  .runner-icon{display:grid!important}.runner-icon img{display:block!important}
  .runner-telemetry{grid-template-columns:1fr 1fr!important;grid-template-areas:'speed dist' 'gap gap'!important}
  .runner-telemetry>em{display:grid!important}
}
@media(max-width:430px){
  .runner-row{grid-template-columns:30px minmax(86px,1fr) 54px minmax(92px,1.08fr)!important}
  .runner-icon img{width:50px!important;height:32px!important}
  .runner-telemetry>b,.runner-telemetry>small,.runner-telemetry>em{padding:3px 4px!important;gap:3px!important}
  .runner-telemetry i{font-size:5.5px!important}.runner-telemetry strong{font-size:7.5px!important}.runner-telemetry em{font-size:6.5px!important}
}


/* v17.0.4 — clean telemetry board: no duplicate CG thumbnail column */
.runner-head{grid-template-columns:42px minmax(132px,1.25fr) minmax(82px,.62fr) minmax(150px,1.15fr)!important}
.runner-row{grid-template-columns:42px minmax(132px,1.25fr) minmax(82px,.62fr) minmax(150px,1.15fr)!important;gap:clamp(7px,.65vw,12px)!important}
.runner-icon{display:none!important}
.runner-speed{display:grid;grid-template-columns:auto 1fr;grid-template-areas:'label label' 'value unit';gap:1px 5px;align-items:end;padding:7px 8px;border:1px solid #194657;border-radius:8px;background:#020d13;min-width:0}
.runner-speed i{grid-area:label;font-style:normal;color:#6fa8bb;font:800 7px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em}.runner-speed strong{grid-area:value;color:#f8fcff;font:950 clamp(14px,1.05vw,20px)/1 ui-monospace,SFMono-Regular,Consolas,monospace}.runner-speed small{grid-area:unit;color:#7de6ff;font:800 8px/1 ui-monospace,SFMono-Regular,Consolas,monospace}
.runner-telemetry{grid-template-columns:1fr!important;grid-template-areas:'dist' 'gap'!important}.runner-telemetry>b{display:none!important}.runner-telemetry>small{grid-area:dist}.runner-telemetry>em{grid-area:gap}
.track-shell.prestart-phase #hudCamera{display:none!important}
.track-shell.prestart-phase .broadcast-hud{grid-template-columns:auto auto auto auto auto!important}
.track-shell.grid-phase .start-grid-cinematic{background:linear-gradient(180deg,rgba(1,7,13,.90),rgba(1,7,13,.55));border-color:#3aa6c3}
.track-shell.grid-phase .start-grid-cinematic strong{font-size:clamp(28px,4vw,58px)!important;text-shadow:0 0 24px #32dfff88}
@media(max-width:700px){.runner-head{display:none!important}.runner-row{grid-template-columns:34px minmax(102px,1fr) minmax(70px,.72fr) minmax(112px,1.05fr)!important}.runner-speed{padding:5px}.runner-speed strong{font-size:13px}.runner-telemetry>small,.runner-telemetry>em{padding:4px!important}.runner-board>header span{font-size:8px!important}.start-grid-cinematic{max-width:94vw!important}.start-grid-cinematic strong{font-size:clamp(25px,9vw,40px)!important}}
@media(max-width:430px){.runner-row{grid-template-columns:32px minmax(92px,1fr) minmax(62px,.68fr) minmax(103px,1fr)!important;gap:4px!important}.runner-name small{display:none}.runner-speed strong{font-size:12px}.runner-speed small{font-size:6px}.runner-telemetry strong{font-size:8px!important}}


/* ===== v17.0.4 — restored fleet + clean LIVE SHIP BOARD + original betting cards ===== */
/* Remove the dark translucent HUD cloud: keep only compact readable status pills. */
.broadcast-hud{background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;padding:0!important;gap:6px!important}
.broadcast-hud span{background:rgba(4,18,27,.88)!important;border:1px solid rgba(45,105,128,.30)!important;box-shadow:none!important}
.broadcast-hud .live-dot{background:#b71f28!important;border-color:#d43842!important}
.track-shell:before,.track-shell:after{display:none!important;content:none!important}

/* The canonical CG fleet must stay visible in WAITING / COUNTDOWN / LIVE / FINISHED. */
.cg-fleet-layer{display:block!important;visibility:visible!important;opacity:1!important;z-index:6!important}
.cg-ship{display:block!important;visibility:visible!important;opacity:1!important}
.cg-ship img{display:block!important;visibility:visible!important;opacity:1!important}

/* LIVE BETTING BOARD: restore the original 8 visual ship cards and do not inherit board cleanup. */
.unified-betting{display:block!important}
.bet-dog-grid{display:grid!important}
.bet-dog-card{display:block!important;visibility:visible!important;opacity:1!important}
.bet-dog-card img{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;height:104px!important;object-fit:contain!important}

/* LIVE SHIP BOARD v17.0.4: telemetry-first, no duplicate ship thumbnail. */
.runner-board{display:flex!important;flex-direction:column!important;min-width:0!important;overflow:hidden!important}
.runner-board>header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;flex-wrap:wrap!important}
.runner-board>header b{font-size:clamp(15px,1.05vw,20px)!important}.runner-board>header small{font-size:clamp(7px,.55vw,10px)!important}.runner-board>header>span{font-size:clamp(7px,.55vw,10px)!important;white-space:nowrap}
.runner-head,.runner-row{grid-template-columns:42px minmax(118px,1.15fr) minmax(78px,.68fr) minmax(148px,1.25fr)!important;gap:8px!important}
.runner-head{display:grid!important}.runner-list{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;min-width:0!important;overflow:auto!important}
.runner-row{display:grid!important;align-items:center!important;min-width:0!important;min-height:62px!important;padding:7px!important}
.runner-icon{display:none!important}
.runner-name{display:flex!important;min-width:0!important}.runner-name b{font-size:clamp(13px,.9vw,17px)!important}.runner-name small{max-width:100%!important;font-size:clamp(6px,.48vw,9px)!important}
.runner-speed{display:grid!important;min-width:0!important}.runner-speed strong{font-size:clamp(13px,1vw,19px)!important}.runner-speed small{display:block!important}
.runner-telemetry{display:grid!important;grid-template-columns:1fr!important;grid-template-areas:'dist' 'gap'!important;gap:3px!important;min-width:0!important}
.runner-telemetry>small{grid-area:dist!important;display:grid!important}.runner-telemetry>em{grid-area:gap!important;display:grid!important}.runner-telemetry strong{overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important}

@media(max-width:1099px){
 .broadcast-grid{grid-template-columns:1fr!important}.runner-board{width:100%!important;max-width:none!important}
 .runner-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .runner-head{display:none!important}.runner-row{grid-template-columns:34px minmax(100px,1fr) minmax(72px,.7fr) minmax(120px,1.1fr)!important;gap:5px!important}
}
@media(max-width:700px){
 .runner-list{grid-template-columns:1fr!important;overflow:visible!important}
 .runner-row{grid-template-columns:34px minmax(96px,1fr) minmax(68px,.68fr) minmax(116px,1.08fr)!important;min-height:58px!important;padding:6px!important}
 .runner-board{overflow:visible!important}.runner-board>header>span{white-space:normal!important}
 .runner-speed{padding:4px!important}.runner-telemetry>small,.runner-telemetry>em{padding:3px 4px!important}
}
@media(max-width:430px){
 .runner-row{grid-template-columns:30px minmax(82px,1fr) minmax(58px,.64fr) minmax(102px,1.05fr)!important;gap:4px!important}
 .coin-logo{width:25px!important;height:25px!important}.runner-name{gap:4px!important}.runner-name b{font-size:12px!important}.runner-name small{display:none!important}
 .runner-speed strong{font-size:11px!important}.runner-speed small{font-size:6px!important}.runner-telemetry strong{font-size:7.5px!important}.runner-telemetry i{font-size:5.5px!important}
}

/* ===== v17.0.5 — pre-start runtime fix + LIVE SHIP BOARD without DIST ===== */
.runner-board:before{content:"CG LIVE TELEMETRY · SPEED + GAP · SERVER ORDER"!important}
.runner-head,.runner-row{grid-template-columns:42px minmax(132px,1.25fr) minmax(92px,.78fr) minmax(132px,1fr)!important}
.runner-telemetry{display:grid!important;grid-template-columns:1fr!important;grid-template-areas:'gap'!important;align-items:center!important}
.runner-telemetry>small{display:none!important}
.runner-telemetry>em{grid-area:gap!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:'label lane' 'value lane'!important;align-items:center!important;gap:1px 8px!important;padding:6px 8px!important}
.runner-telemetry>em>i{grid-area:label!important}.runner-telemetry>em>strong{grid-area:value!important;font-size:clamp(11px,.82vw,16px)!important}.runner-lane{grid-area:lane!important;align-self:center!important;font:900 clamp(9px,.7vw,13px)/1 ui-monospace,SFMono-Regular,Consolas,monospace;color:#8cecff;white-space:nowrap}
@media(max-width:1099px){.runner-row{grid-template-columns:34px minmax(112px,1fr) minmax(76px,.7fr) minmax(112px,.9fr)!important}}
@media(max-width:700px){.runner-row{grid-template-columns:34px minmax(104px,1fr) minmax(72px,.7fr) minmax(102px,.9fr)!important}.runner-telemetry>em{padding:4px 5px!important;gap:1px 5px!important}}
@media(max-width:430px){.runner-row{grid-template-columns:30px minmax(88px,1fr) minmax(62px,.68fr) minmax(88px,.86fr)!important}.runner-lane{font-size:8px!important}.runner-telemetry>em>strong{font-size:8px!important}}

/* ===== v17.0.7 — GAP visibility + interactive stationary ship showroom ===== */
.runner-board{container-type:inline-size!important}
.runner-telemetry>em>strong{color:#ffd34a!important;font-weight:1000!important;letter-spacing:.01em!important}
.runner-lane{color:#7fe8ff!important;font-weight:1000!important}
@container (max-width:560px){
  .runner-head{display:none!important}
  .runner-row{grid-template-columns:42px minmax(116px,1fr) minmax(112px,.92fr)!important;grid-template-rows:auto auto!important;grid-template-areas:'pos name speed' 'pos name gap'!important;column-gap:7px!important;row-gap:4px!important;min-height:78px!important;padding:8px!important}
  .runner-row>.pos{grid-area:pos!important;align-self:stretch!important;min-height:58px!important}
  .runner-name{grid-area:name!important;align-self:center!important}.runner-speed{grid-area:speed!important;align-self:center!important;min-width:0!important;padding:5px 7px!important}
  .runner-telemetry{grid-area:gap!important;display:block!important;min-width:0!important}.runner-telemetry>em{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:'label lane' 'value lane'!important;padding:5px 7px!important;border:1px solid #1d5267!important;border-radius:9px!important;background:#031018!important}
  .runner-telemetry>em>strong{font-size:clamp(11px,3.2cqw,15px)!important}.runner-lane{font-size:clamp(9px,2.7cqw,12px)!important}
}
@container (max-width:360px){
  .runner-row{grid-template-columns:36px minmax(96px,1fr) minmax(92px,.9fr)!important;padding:6px!important;column-gap:5px!important}.coin-logo{width:27px!important;height:27px!important}.runner-name b{font-size:12px!important}.runner-name small{display:none!important}
  .runner-speed strong{font-size:12px!important}.runner-telemetry>em>strong{font-size:10px!important}.runner-lane{font-size:9px!important}
}

.bet-dog-card .ship-inspect-hint{position:absolute;left:50%;top:84px;transform:translateX(-50%);z-index:4;padding:4px 7px;border:1px solid color-mix(in srgb,var(--coin) 70%,#fff 30%);border-radius:999px;background:rgba(2,10,16,.88);color:#fff;font:900 8px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;opacity:0;transition:opacity .18s ease,transform .18s ease;pointer-events:none;white-space:nowrap}
.bet-dog-card:hover .ship-inspect-hint,.bet-dog-card:focus-visible .ship-inspect-hint{opacity:1;transform:translateX(-50%) translateY(-2px)}
.bet-dog-card img[data-inspect-ship]{cursor:zoom-in}

body.ship-inspector-open{overflow:hidden!important}
.ship-inspector[hidden]{display:none!important}.ship-inspector{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:clamp(8px,2vw,24px)}
.ship-inspector-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,rgba(20,90,120,.22),rgba(0,5,10,.92) 58%,#000 100%);backdrop-filter:blur(8px)}
.ship-inspector-panel{--inspect-coin:#63eaff;position:relative;width:min(1120px,96vw);height:min(760px,92dvh);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid color-mix(in srgb,var(--inspect-coin) 58%,#204755 42%);border-radius:20px;background:linear-gradient(180deg,#061721 0%,#02090e 72%,#030c12 100%);box-shadow:0 30px 90px #000c,0 0 50px color-mix(in srgb,var(--inspect-coin) 20%,transparent)}
.ship-inspector-panel>header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid #173b49;background:linear-gradient(90deg,color-mix(in srgb,var(--inspect-coin) 10%,transparent),transparent 55%)}
.ship-inspector-panel>header small{display:block;color:#7cdcf6;font:800 10px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.14em}.ship-inspector-panel>header h2{margin:4px 0 0;font-size:clamp(20px,3vw,38px);line-height:1;color:#fff}.ship-inspector-close{width:42px;height:42px;border:1px solid #2a596a;border-radius:12px;background:#06131a;color:#fff;font-size:28px;cursor:pointer}
.ship-inspector-stage{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden;perspective:1400px;cursor:grab;touch-action:none;user-select:none;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--inspect-coin) 15%,transparent) 0%,rgba(4,17,25,.44) 34%,rgba(0,4,8,.92) 75%),linear-gradient(180deg,transparent 74%,color-mix(in srgb,var(--inspect-coin) 10%,#02070b 90%) 100%)}
.ship-inspector-stage:before{content:"";position:absolute;inset:auto 4% 10%;height:2px;background:linear-gradient(90deg,transparent,var(--inspect-coin),transparent);box-shadow:0 0 20px var(--inspect-coin);opacity:.55}.ship-inspector-stage.dragging{cursor:grabbing}
.ship-turntable{position:relative;width:min(78vw,820px);height:min(55dvh,500px);transform-style:preserve-3d;transition:transform .06s linear;will-change:transform}.ship-turntable-face{position:absolute;inset:0;display:grid;place-items:center;backface-visibility:hidden;transform-style:preserve-3d}.ship-turntable-front img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 26px 28px #000b) drop-shadow(0 0 26px color-mix(in srgb,var(--inspect-coin) 55%,transparent));pointer-events:none}.ship-turntable-back{transform:rotateY(180deg)}
.ship-sponsor-plate{width:min(70%,560px);padding:clamp(20px,3vw,40px);text-align:center;border:1px solid color-mix(in srgb,var(--inspect-coin) 68%,#fff 10%);border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--inspect-coin) 18%,#06121a 82%),#02080d);box-shadow:0 24px 60px #000a,0 0 40px color-mix(in srgb,var(--inspect-coin) 20%,transparent);transform:translateZ(4px)}.ship-sponsor-plate strong{display:block;margin-top:14px;font-size:clamp(22px,4vw,52px);line-height:1;color:#fff}.ship-sponsor-plate small{display:block;margin:8px 0 20px;color:#8cb6c5;font:900 10px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.16em}.ship-sponsor-plate b{display:block;color:var(--inspect-coin);font-size:clamp(16px,2vw,24px)}.ship-sponsor-plate em{display:block;margin-top:8px;color:#dbe8ed;font-style:normal;font-weight:800}
.ship-inspector-coin{display:inline-flex;align-items:center;justify-content:center;gap:10px;color:var(--inspect-coin);font-size:24px;font-weight:1000}.ship-inspector-coin .coin-svg{width:44px;height:44px}.ship-inspector-shadow{position:absolute;left:50%;bottom:11%;width:min(56%,560px);height:42px;transform:translateX(-50%);border-radius:50%;background:#000a;filter:blur(18px);pointer-events:none}
.ship-inspector-panel>footer{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:10px 14px;border-top:1px solid #173b49;background:#030c12}.ship-inspector-panel>footer>div{min-width:118px;padding:7px 10px;border:1px solid #173b49;border-radius:9px}.ship-inspector-panel>footer span{display:block;color:#7297a6;font:800 8px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}.ship-inspector-panel>footer b{display:block;margin-top:4px;font-size:10px;color:#e6f4f7}.ship-inspector-panel>footer button{border:1px solid var(--inspect-coin);border-radius:9px;background:#06141b;color:#fff;padding:10px 16px;font-weight:900;cursor:pointer}
@media(max-width:620px){.ship-inspector{padding:4px}.ship-inspector-panel{width:100%;height:96dvh;border-radius:14px}.ship-turntable{width:94vw;height:47dvh}.ship-sponsor-plate{width:82%;padding:18px}.ship-inspector-panel>footer{gap:6px}.ship-inspector-panel>footer>div{min-width:92px;padding:6px}.bet-dog-card .ship-inspect-hint{opacity:1;top:80px;font-size:7px}}


/* ===== v17.0.7 — PRIORITY LIVE SHIP BOARD / no glass cloud ===== */
.broadcast-grid{grid-template-columns:minmax(0,1fr) clamp(330px,22vw,430px)!important;align-items:stretch!important}
.runner-board{position:relative!important;padding:10px!important;background:#02090e!important;border:2px solid #2fcfe4!important;border-radius:14px!important;box-shadow:0 0 0 1px #0c6171 inset,0 0 30px rgba(37,216,239,.18),0 18px 48px rgba(0,0,0,.45)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:hidden!important}
.runner-board:before{content:'LIVE SHIP BOARD · OFFICIAL SERVER ORDER'!important;display:block!important;margin:0 0 8px!important;padding:8px 10px!important;border:1px solid #2fcfe4!important;border-radius:8px!important;background:#071c25!important;color:#7ff2ff!important;font:1000 clamp(9px,.68vw,12px)/1 ui-monospace,SFMono-Regular,Consolas,monospace!important;letter-spacing:.10em!important;text-align:center!important;box-shadow:inset 0 0 18px rgba(39,214,234,.08)!important}
.runner-board>header{position:sticky!important;top:0!important;z-index:8!important;margin:0 0 5px!important;padding:8px 8px!important;background:#02090e!important;border-bottom:1px solid #1b6777!important}
.runner-board>header b{font-size:clamp(19px,1.22vw,26px)!important;line-height:1!important;color:#fff!important;letter-spacing:-.02em!important}
.runner-board>header span{color:#68dff0!important;font-weight:900!important}
.runner-head{grid-template-columns:42px minmax(118px,1.15fr) minmax(88px,.72fr) minmax(110px,.92fr)!important;padding:8px 6px!important;color:#83d8e7!important;font-weight:900!important;letter-spacing:.08em!important;border-color:#1a5665!important}
.runner-list{gap:5px!important;padding-top:5px!important;overflow:auto!important;scrollbar-color:#2d6c79 #02080c!important}
.runner-row{grid-template-columns:42px minmax(118px,1.15fr) minmax(88px,.72fr) minmax(110px,.92fr)!important;min-height:54px!important;padding:5px 6px!important;background:#06141b!important;border:1px solid #17495a!important;border-radius:9px!important;box-shadow:none!important}
.runner-row:hover{border-color:#2b8296!important;background:#071b24!important}
.runner-row.leader{background:#063424!important;border:2px solid #19e887!important;box-shadow:inset 4px 0 #19e887,0 0 18px rgba(25,232,135,.15)!important}
.runner-row .pos{width:34px!important;height:34px!important;border:1px solid #2c6a80!important;background:#103247!important;color:#fff!important;font-size:14px!important}
.runner-row.leader .pos{background:#0f754a!important;border-color:#3bf0a0!important}
.runner-name{min-width:0!important}.runner-name b{font-size:clamp(13px,.92vw,17px)!important}.runner-name small{font-size:clamp(6px,.47vw,8px)!important;color:#75cce0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.runner-speed{display:grid!important;align-content:center!important;min-width:0!important;padding:5px 7px!important;border:1px solid #205568!important;border-radius:8px!important;background:#020b10!important}
.runner-speed small{font-size:7px!important;color:#75c6d7!important;letter-spacing:.10em!important}.runner-speed strong{font-size:clamp(13px,.94vw,17px)!important;color:#fff!important;white-space:nowrap!important}
.runner-telemetry>em{padding:5px 7px!important;border:1px solid #205568!important;border-radius:8px!important;background:#020b10!important}.runner-telemetry>em>i{color:#77c9d8!important}.runner-telemetry>em>strong{font-size:clamp(12px,.88vw,16px)!important;color:#ffd34a!important}.runner-lane{font-size:clamp(10px,.75vw,13px)!important;color:#7ff1ff!important}

@media(max-width:1099px){
 .broadcast-grid{grid-template-columns:1fr!important}.runner-board{order:2!important;width:100%!important;max-height:none!important}.runner-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important}.runner-head{display:none!important}
 .runner-row{grid-template-columns:38px minmax(112px,1fr) minmax(82px,.7fr) minmax(105px,.86fr)!important;min-height:58px!important}
}
@media(max-width:620px){
 .runner-board{padding:7px!important;border-width:2px!important;border-radius:10px!important}.runner-board:before{font-size:9px!important;padding:7px!important}.runner-list{grid-template-columns:1fr!important;gap:4px!important}
 .runner-row{grid-template-columns:36px minmax(100px,1fr) minmax(72px,.7fr) minmax(98px,.9fr)!important;min-height:52px!important;padding:5px!important}.runner-name small{display:block!important}.runner-speed strong{font-size:13px!important}.runner-telemetry>em>strong{font-size:12px!important}
}
@media(max-width:390px){
 .runner-row{grid-template-columns:32px minmax(86px,1fr) minmax(64px,.68fr) minmax(84px,.82fr)!important;column-gap:4px!important}.runner-row .pos{width:29px!important;height:29px!important;font-size:12px!important}.runner-name b{font-size:12px!important}.runner-name small{display:none!important}.runner-speed{padding:4px!important}.runner-speed strong{font-size:11px!important}.runner-telemetry>em{padding:4px!important}.runner-telemetry>em>strong{font-size:10px!important}.runner-lane{font-size:9px!important}
}


/* v18 Hovercraft Engine 2.0 presentation layer */
.track-shell.three-ready{isolation:isolate}
.cg-ship.is-warping::before{animation:v18ThrusterPulse .72s ease-in-out infinite alternate}
.cg-ship.is-warping::after{animation:v18TrailPulse .46s ease-in-out infinite alternate}
.cg-ship.is-leader::after{filter:blur(2.5px) brightness(1.25)}
.track-shell:not(.grid-phase) .cg-ship{transition:filter .18s linear}
@keyframes v18ThrusterPulse{from{filter:blur(7px);transform:translateZ(-12px) scaleX(calc(1.08 + var(--warp)*.28))}to{filter:blur(11px);transform:translateZ(-12px) scaleX(calc(1.28 + var(--warp)*.42))}}
@keyframes v18TrailPulse{from{opacity:calc(.14 + var(--warp)*.48)}to{opacity:calc(.25 + var(--warp)*.72)}}
@media (max-width:720px){.cg-ship::after{left:-32%;width:48%}.cg-ship::before{inset:30% 55% 32% -9%}}
@media (prefers-reduced-motion:reduce){.cg-ship.is-warping::before,.cg-ship.is-warping::after{animation:none!important}}
