/* Night-run instrumentation. No extra layout rows or persistent title. */
body[data-mini=drift] { --accent: #59e5ff; --surface: #10293b; background: #040b14; }
body[data-mini=drift] .mini-stage { border-color: #4a8198; border-radius: 12px 12px 0 0; box-shadow: 0 0 18px #38cfff12; }
body[data-mini=drift] .mini-hud { background: linear-gradient(#06121cf5,#06121cd9 70%,#06121c00); }
body[data-mini=drift] .mini-hud > span:first-child { border-color: #67dff94d; border-radius: 7px; background: #0b2332ed; }
body[data-mini=drift] .mini-hud .score-symbol { color: #6beaff; }
body[data-mini=drift] .mini-hud strong { color: #effbff; }
body[data-mini=drift] .mini-hud button { border-color: #7ad6ed55; border-radius: 7px; background: #102c3d; }
body[data-mini=drift] .mini-buddy { border-color: #4a8198; border-top-color: #61d2f044; border-radius: 0 0 12px 12px; background: linear-gradient(110deg,#17394b,#09131f); }
body[data-mini=drift] .buddy-talk { border: 0; background: transparent; padding-left: 0; }
body[data-mini=drift] .buddy-badge { color: #ffd293; }
body[data-mini=drift] .mini-panel { border-color: #83dced88; border-radius: 18px; background: linear-gradient(150deg,#1b3a4c,#0a1623 65%); box-shadow: inset 0 1px #e6fbff66,0 20px 55px #0009; }
body[data-mini=drift] .mini-hero::before { border-color: #73e4ff88; box-shadow: 0 0 0 9px #59e5ff07,0 0 0 10px #59e5ff26; }
body[data-mini=drift] .mini-hero::after { color: #73e4ff; }
body[data-mini=drift] .cast-choice { border-radius: 10px; background: linear-gradient(145deg,#274658,#091522); }
body[data-mini=drift] .cast-choice[aria-pressed=true] { border-color: #83eaff; box-shadow: 0 0 0 2px #61e0ff33,inset 0 1px #fff5; background: #1f5064; }
body[data-mini=drift] .cast-choice[aria-pressed=true]::after { background: #83eaff; }
body[data-mini=drift] .mini-play { width: 94px; border-radius: 12px; border-color: #fff0c8; background: linear-gradient(145deg,#ffdfa0,#e4963f); box-shadow: inset 0 1px #fff9,0 4px #855223,0 8px 18px #0004; }
@media (prefers-reduced-motion:reduce) { body[data-mini=drift] .mini-play:active { transform: none; } }

/* Compact cockpit: maximize the road and retain finger-sized pause access. */
body[data-mini=drift] .mini-shell { min-height: 0; padding: 0 2px max(2px, env(safe-area-inset-bottom)); }
body[data-mini=drift] .mini-hud .score-symbol { font-size: 9px; letter-spacing: .08em; }
body[data-mini=drift] .mini-hud button { width: 44px; height: 39px; }
body[data-mini=drift] .mini-hud { padding: 2px 5px; }
body[data-mini=drift] .mini-buddy { height: 44px; gap: 5px; padding: 0 5px; }
body[data-mini=drift] .buddy-portrait { align-self: center; width: 42px; height: 42px; margin-top: 0; }
/* React inside the buddy bar instead of bouncing over the road. */
body[data-mini=drift] .buddy-react { animation-name: drift-buddy-cheer; }
@keyframes drift-buddy-cheer { 50% { transform: scale(.94) rotate(-3deg); } }
body[data-mini=drift] .buddy-badge { font-size: 10px; padding: 5px; }
body[data-mini=drift] .buddy-talk { font-size: 12px; }

body[data-mini=drift] .mini-panel { gap: 9px; padding: 14px; }
body[data-mini=drift] .panel-status { margin: 0; font-size: 12px; font-weight: 800; letter-spacing: .08em; color: #93eaff; }
body[data-mini=drift] .run-summary { margin: 0; color: #daedf5; font-size: 12px; font-variant-numeric: tabular-nums; }
body[data-mini=drift] .mini-message { font-size: 38px; line-height: 1.1; }
body[data-mini=drift] [data-mode=result] .mini-message::after { content: ' PTS'; font-size: 12px; letter-spacing: .04em; color: #c0d5e1; }
body[data-mini=drift] [data-mode=pause] .mini-message { font-size: 24px; }
body[data-mini=drift] .mini-play { display: flex; justify-content: center; gap: 8px; width: 190px; min-height: 50px; font-size: 15px; font-weight: 800; }
body[data-mini=drift] .mini-play svg { width: 18px; height: 18px; }
body[data-mini=drift] .mini-best { font-size: 11px; letter-spacing: .05em; }
body[data-mini=drift] .mini-next { min-height: 44px; }
body[data-mini=drift] [data-mode=result] .panel-status { color: #ffda96; }
@media (max-height:740px) {
    body[data-mini=drift] .mini-hero { height: 106px; width: 130px; }
    body[data-mini=drift] .panel-portrait { width: 108px; height: 108px; }
}
@media (max-height:650px) {
    body[data-mini=drift] .mini-panel { gap: 7px; padding: 10px 12px; }
    body[data-mini=drift] .mini-hero { height: 76px; width: 100px; }
    body[data-mini=drift] .panel-portrait { width: 80px; height: 80px; }
    body[data-mini=drift] .mini-hero::before { width: 68px; height: 68px; }
}

/* Result celebration stays readable after the simulation stops. */
body[data-mini=drift] [data-record=true] .mini-panel { border-color: #ffda8b; box-shadow: inset 0 1px #fff0c7,0 0 22px #ffc46222,0 20px 55px #0009; }
body[data-mini=drift] [data-record=true] .panel-status::before { content: '🏆✨ '; }
body[data-mini=drift] [data-record=true] .mini-message { color: #ffe1a0; text-shadow: 0 0 12px #ffbd5033; }

/* Keep the next attempt within reach; the chosen driver stays visible in the buddy bar. */
body[data-mini=drift] [data-mode=result] .mini-hero { display: none; }
body[data-mini=drift] [data-mode=result] .mini-panel { gap: 8px; }
body[data-mini=drift] [data-mode=result] .run-summary { color: #ffe0a0; text-align: center; line-height: 1.6; }

/* Keep the replay ahead of optional cast changes, with comparable score units. */
body[data-mini=drift] .run-scores { display: flex; flex-direction: column; align-items: center; gap: 5px; }
body[data-mini=drift] [data-mode=result] .run-scores { width: 100%; padding: 10px; border: 1px solid #6b9daf66; border-radius: 10px; background: #06121c99; }
body[data-mini=drift] [data-mode=result] .mini-best { font-size: 14px; color: #daedf5; }
body[data-mini=drift] [data-mode=result] .mini-best::after { content: ' PTS'; font-size: 11px; }
body[data-mini=drift] .cast-toggle { min-height: 44px; padding: 4px 14px; font-size: 12px; background: transparent; border-color: #73b5cb66; }
