/* Drift Legends 3D (shared: sim3d.css + car-kit.css) */
#game-root .sim-controls-help { margin-top: 14px; }
.dl-tune { margin-top: 16px; padding: 12px 14px; border-radius: 14px; background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .1); display: grid; gap: 8px; }
.dl-tune h3 { margin: 0; font-size: 16px; }
.dl-slider { display: grid; grid-template-columns: 120px 1fr 52px; align-items: center; gap: 10px; font-size: 14px; }
.dl-slider input { width: 100%; accent-color: #f97316; }
.dl-slider output { font-weight: 800; text-align: right; font-variant-numeric: tabular-nums; }
.dl-check { font-size: 14px; display: flex; gap: 8px; align-items: center; }
.dl-check input { width: 18px; height: 18px; accent-color: #f97316; }
.dl-reset { justify-self: start; }
.dl-top { position: absolute; left: 50%; top: 10px; transform: translateX(-50%); display: flex; gap: 8px; align-items: center; pointer-events: none; }
.dl-time, .dl-score { background: rgba(8, 16, 28, .72); border: 1px solid rgba(255, 255, 255, .18); border-radius: 12px; padding: 2px 14px; font: 900 22px system-ui, sans-serif; font-variant-numeric: tabular-nums; }
.dl-score { color: #fdba74; min-width: 90px; text-align: center; }
.dl-time.is-low { border-color: #ef4444; animation: ck-blink .5s steps(2) infinite; }
.dl-drift { position: absolute; left: 50%; top: 58px; transform: translateX(-50%) scale(.9); display: flex; flex-direction: column; align-items: center; gap: 2px; pointer-events: none; opacity: 0; transition: opacity .2s, transform .2s; text-shadow: 0 2px 6px rgba(0, 0, 0, .7); }
.dl-drift.is-on { opacity: 1; transform: translateX(-50%) scale(1); }
.dl-pts { font: 900 32px system-ui, sans-serif; color: #fde047; font-variant-numeric: tabular-nums; }
.dl-mult { font: 900 18px system-ui, sans-serif; color: #fb923c; }
.dl-angle { width: 140px; height: 8px; border-radius: 4px; background: rgba(8, 16, 28, .6); overflow: hidden; }
.dl-angle i { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #facc15, #ef4444); }
.sim-stage canvas.dl-map { position: absolute; inset: auto; right: 10px; top: 10px; width: 110px; height: 110px; border-radius: 12px; background: rgba(8, 16, 28, .45); pointer-events: none; }
@container (max-width: 480px) {
  .sim-play .sim-toolbar { right: 96px; }
  .sim-stage canvas.dl-map { width: 84px; height: 84px; top: 50px; }
  .dl-top { top: 96px; }
  .dl-time, .dl-score { font-size: 17px; }
  .dl-drift { top: 140px; }
  .dl-pts { font-size: 26px; }
}
@media (max-width: 520px) { .dl-slider { grid-template-columns: 96px 1fr 46px; } }
@media (prefers-reduced-motion: reduce) { .dl-time.is-low { animation: none; } }
