.rhythm-arcade .arcade-game{padding:20px;background:var(--ui-panel,#fff);border:1px solid var(--ui-border,#ddd);border-radius:24px}.arcade-hud{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:15px}.arcade-hud>span{background:var(--ui-soft,#edf3f6);border-radius:12px;padding:10px;color:var(--ui-accent,#277866)}.arcade-stage{height:clamp(320px,55dvh,560px);position:relative;overflow:hidden;border-radius:18px;background:#101923;color:#f3ffff}.arrow-lanes{display:grid;grid-template-columns:repeat(4,1fr);position:absolute;inset:0}.arrow-lane{border-right:1px solid #7ca5bb33;background:linear-gradient(transparent,#44a4a111)}.arrow-target{position:absolute;bottom:45px;transform:translateX(-50%);margin-left:12.5%;width:50px;height:50px;border:2px solid #8ee6cf;border-radius:15px;display:grid;place-items:center;font-size:32px}.arrow-lane:nth-child(2) .arrow-target{margin-left:12.5%;left:25%}.arrow-lane:nth-child(3) .arrow-target{margin-left:12.5%;left:50%}.arrow-lane:nth-child(4) .arrow-target{margin-left:12.5%;left:75%}.fall-arrow{position:absolute;width:44px;height:44px;border-radius:13px;background:#c3f6dd;color:#193a45;font-size:32px;display:grid;place-items:center;transform:translate(-50%,-50%);box-shadow:0 3px 0 #4eaa92}.arcade-count{position:absolute;top:35%;left:50%;transform:translateX(-50%);font-size:64px;color:#ffe3a0;font-weight:900;pointer-events:none}.arcade-feedback{position:absolute;top:15px;left:0;right:0;text-align:center;color:#cafde5;font-weight:800;pointer-events:none}.arcade-controls,.arcade-transport{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:16px 0}.arcade-controls button{font-size:28px;width:70px;height:54px}.arcade-transport label{display:flex;align-items:center;gap:9px;font-size:12px}.arcade-transport select{padding:10px;max-width:260px}.arcade-game>p{font-size:13px;line-height:1.6;text-align:center}.arcade-save-note{color:var(--ui-muted,#647c91)}.road-stage canvas{width:100%;height:100%;display:block}.arcade-loading{padding:30px;text-align:center}
.arrow-target{left:12.5%;margin-left:0}.arrow-lane:nth-child(2) .arrow-target{left:37.5%;margin-left:0}.arrow-lane:nth-child(3) .arrow-target{left:62.5%;margin-left:0}.arrow-lane:nth-child(4) .arrow-target{left:87.5%;margin-left:0}
/* Compact highway keeps all four lanes within a single focus area. */
.arrow-stage{background:radial-gradient(ellipse at 50% 80%,#1d3140,#101923 75%)}.arrow-highway{position:absolute;inset:0 auto 0 50%;transform:translateX(-50%);width:min(360px,100%);background:#0d1725cc;border-inline:1px solid #8ca5b633;overflow:hidden}.arrow-highway #arcade-falling{position:absolute;inset:0}.arrow-highway .arrow-lanes{inset:0}.arrow-lane{background:linear-gradient(#ffffff03,#ffffff08);border-color:#accadb20}.dir-0{--arrow:#ffb879}.dir-1{--arrow:#8bbefa}.dir-2{--arrow:#83efd0}.dir-3{--arrow:#d4a6ff}.arrow-highway .arrow-target{top:43px;bottom:auto;left:12.5%;margin-left:0;width:54px;height:54px;border:0;background:transparent;box-shadow:none;z-index:2}.arrow-highway .arrow-lane:nth-child(2) .arrow-target{left:37.5%;margin-left:0}.arrow-highway .arrow-lane:nth-child(3) .arrow-target{left:62.5%;margin-left:0}.arrow-highway .arrow-lane:nth-child(4) .arrow-target{left:87.5%;margin-left:0}.arrow-target svg,.fall-arrow svg{width:46px;height:46px;overflow:visible}.arrow-target path{fill:#182532;stroke:var(--arrow);stroke-width:2.8;stroke-linejoin:round;filter:drop-shadow(0 0 3px #fff2)}.arrow-target.hit path{fill:var(--arrow);stroke:#fff;filter:drop-shadow(0 0 8px var(--arrow))}.fall-arrow{width:50px;height:50px;background:transparent;box-shadow:none;border:0;border-radius:0}.fall-arrow path{fill:var(--arrow);stroke:#ffffffd9;stroke-width:1.5;stroke-linejoin:round;filter:drop-shadow(0 3px 1px #0007)}.arcade-controls button[data-arcade-tap]{min-width:54px;width:70px}.arrow-stage .arcade-feedback{top:112px;font-size:22px;text-shadow:0 2px 3px #000}.arrow-stage .arcade-count{top:42%;z-index:3}@media(max-width:420px){.arrow-highway{width:100%}.arrow-target svg,.fall-arrow svg{width:40px;height:40px}.arcade-controls{gap:7px}.arcade-controls button[data-arcade-tap]{width:58px}}
/* Downward flow with a compact goal at the bottom; progress below the game. */
.arrow-highway .arrow-target{top:auto;bottom:43px}.arrow-stage .arcade-feedback{top:18px}.arrow-stage .arcade-count{top:35%}.arrow-journey{margin-top:24px;padding:24px;background:var(--ui-panel,#fff);border:1px solid var(--ui-border,#d6e1eb);border-radius:23px}.arrow-journey>p{color:var(--ui-muted,#61758b);font-size:13px;line-height:1.6}#arrow-journey-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:20px 0}.arrow-level{display:grid;grid-template-columns:30px 1fr;gap:6px 9px;padding:15px;text-align:left;border:1px solid var(--ui-border,#d6e1eb);border-radius:17px;background:var(--ui-soft,#edf2f7);color:var(--ui-text,#293b50)}.arrow-level b{grid-row:1/4;color:var(--ui-accent,#227c69);font-size:22px;align-self:center}.arrow-level strong{font-size:14px}.arrow-level small,.arrow-level span{color:var(--ui-muted,#61758b);font-size:11px}.arrow-level.current{border:2px solid var(--ui-accent,#227c69);background:var(--ui-selected,#dcf4e9)}.arrow-level:disabled{opacity:.55}.arrow-level.current:disabled{opacity:1}#arrow-journey-summary{font-weight:800;color:var(--ui-accent,#227c69)}@media(max-width:900px){#arrow-journey-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){#arrow-journey-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.arrow-journey{padding:16px}.arrow-level{padding:12px;grid-template-columns:24px 1fr}}
.arrow-level progress{grid-column:2;width:100%;height:6px;accent-color:var(--ui-accent,#227c69)}
/* Short hit celebrations; nothing animates between successful taps. */
#arrow-effects{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden}.arrow-burst{position:absolute;bottom:70px;width:0;height:0;color:var(--arrow)}.hit-spark{position:absolute;left:-6px;top:-6px;font-size:14px;font-style:normal;line-height:1;color:var(--arrow);text-shadow:0 0 5px currentColor;animation:arrow-spark 620ms cubic-bezier(.12,.6,.28,1) var(--delay) both}.hit-spark:nth-child(3n){color:#fff2b3;font-size:19px}.hit-ring{position:absolute;left:-21px;top:-21px;width:42px;height:42px;border:3px solid var(--arrow);border-radius:50%;animation:arrow-ring 480ms ease-out both}.hit-points{position:absolute;left:0;bottom:23px;white-space:nowrap;font-size:20px;font-weight:900;color:#fff;text-shadow:0 2px 0 #101923,0 0 8px var(--arrow);animation:arrow-points 750ms ease-out both}.arrow-burst.milestone .hit-points{font-size:24px;color:#ffe39a}.arrow-burst.still .hit-points{animation:none;transform:translateX(var(--label-shift,-50%));font-size:18px}@keyframes arrow-spark{0%{opacity:1;transform:translate(0,0) scale(.5)}60%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--spin)) scale(.15)}}@keyframes arrow-ring{from{opacity:.85;transform:scale(.5)}to{opacity:0;transform:scale(2.7)}}@keyframes arrow-points{0%{opacity:0;transform:translate(var(--label-shift,-50%),8px) scale(.75)}18%{opacity:1;transform:translate(var(--label-shift,-50%),-3px) scale(1.08)}65%{opacity:1}100%{opacity:0;transform:translate(var(--label-shift,-50%),-36px) scale(1)}}@media(prefers-reduced-motion:reduce){.hit-spark,.hit-ring{display:none}.hit-points{animation:none;transform:translateX(var(--label-shift,-50%))}}
/* Skill-first arcade: smooth controls, clear goals and bounded effects. */
.rhythm-arcade{max-width:1240px;margin:auto;padding-bottom:25px}.rhythm-arcade [hidden]{display:none!important}.arcade-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:25px 0}.arcade-heading h1{font:850 clamp(32px,4vw,51px)/1.08 ui-rounded,system-ui,sans-serif;letter-spacing:-1.7px;margin:10px 0}.arcade-heading h1 span{display:block;font:500 14px/1.5 system-ui;letter-spacing:0;color:var(--ui-muted);margin-top:8px}.arcade-modebar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:0 0 17px}.arcade-tabs{display:flex;padding:5px;border:1px solid var(--ui-border);background:var(--ui-soft);border-radius:99px}.arcade-tabs button{border:0;background:transparent;color:var(--ui-muted);border-radius:99px;padding:10px 18px;box-shadow:none;font-size:13px;font-weight:800}.arcade-tabs button[aria-pressed=true]{background:var(--ui-panel)!important;color:var(--ui-text)!important;box-shadow:0 2px 8px #13233418!important}.arcade-modebar p{font-size:12px;color:var(--ui-muted);margin:0;flex:1}.arcade-modebar>.subtle{font-size:12px}.rhythm-arcade .arcade-game{padding:0;border-radius:27px;overflow:hidden;box-shadow:0 12px 45px #192d4110}.arcade-hud{padding:17px 25px;margin:0;gap:18px;min-height:87px}.arcade-hud>div:first-child,.arcade-hud>div:last-child{min-width:85px}.arcade-hud>div:last-child{text-align:right}.arcade-hud small{display:block;font-size:9px;font-weight:800;letter-spacing:1.8px;color:var(--ui-muted);margin-bottom:3px}.arcade-hud strong{font-size:26px;letter-spacing:-.8px;font-weight:850;color:var(--ui-text)}.arcade-track-info{text-align:center;min-width:0}.arcade-track-info>span{display:block;font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ui-muted);margin-bottom:4px}.arcade-track-info>strong{font-size:15px;letter-spacing:0}.arcade-stage{height:clamp(370px,58dvh,610px);border-radius:0;isolation:isolate}.road-stage canvas{position:absolute;inset:0;z-index:0}.arrow-stage{background:radial-gradient(ellipse at 50% 70%,#353455,#202238 80%)}.arrow-highway{width:min(360px,100%);background:linear-gradient(#131b2c,#192336);border-inline:1px solid #c1c7eb25;z-index:1}.arrow-lane{background:linear-gradient(transparent,#8a85dd0c);border-color:#b5c2e11c}.arrow-goal-line{position:absolute;bottom:69px;left:0;right:0;height:2px;background:#cfd8ed66;box-shadow:0 0 15px #aeaff833}.arrow-highway .arrow-target{bottom:43px;z-index:3}.arrow-target.holding path{fill:var(--arrow);stroke:#fff;filter:drop-shadow(0 0 9px var(--arrow))}.fall-arrow{z-index:2}.fall-arrow svg{position:relative;z-index:2}.hold-tail{position:absolute;bottom:50%;height:var(--tail,80px);width:19px;left:50%;transform:translateX(-50%);border-radius:99px 99px 5px 5px;background:linear-gradient(90deg,color-mix(in srgb,var(--arrow),transparent 60%),var(--arrow),color-mix(in srgb,var(--arrow),transparent 50%));border:1px solid color-mix(in srgb,var(--arrow),white 30%);opacity:.8;z-index:0}.hold-tail:before{content:'';position:absolute;inset:8px 7px;background:#fff8;border-radius:99px}.arrow-ambient{position:absolute;left:5%;top:30%;pointer-events:none}.arrow-ambient b{font:900 clamp(32px,4.5vw,70px)/1.05 system-ui;letter-spacing:-3px;color:#b4b2d026}.arcade-beat-dots{position:absolute;left:50%;top:18px;transform:translateX(-50%);display:flex;gap:8px;z-index:5;pointer-events:none}.arcade-beat-dots span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-size:11px;font-weight:800;color:#d5d9ea;background:#19273bbb;border:1px solid #e3edff33}.arcade-beat-dots span.active{background:#d5fff0;color:#254c46;border-color:#fff}.arcade-count{z-index:6;top:39%!important;font-size:82px;line-height:1;color:#fff4d5;text-shadow:0 3px 0 #263247,0 10px 40px #20203370}.arcade-feedback,.arrow-stage .arcade-feedback{top:64px;font-size:22px;color:#e5fff1;text-shadow:0 2px 7px #1a213a;z-index:5}.road-stage .arcade-feedback{top:auto;bottom:29px;color:#fff}.arcade-ready,.arcade-results{position:absolute;z-index:7;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;background:linear-gradient(0deg,#132237e8,#14273a55);color:white}.arrow-stage .arcade-ready{background:linear-gradient(0deg,#172039ee,#29234255)}.arcade-ready>span{font-size:10px;letter-spacing:2.4px;color:#d8f5e8;font-weight:800}.arcade-ready h2,.arcade-results h2{font-size:clamp(25px,3.4vw,42px);letter-spacing:-1.3px;margin:14px 0;line-height:1.1;max-width:540px}html[data-theme] .rhythm-arcade :is(.arcade-ready,.arcade-results) h2{color:#fff!important}.arcade-ready p,.arcade-results p{color:#e2eaf3;max-width:400px;font-size:14px;line-height:1.6;margin:0 0 23px}.arcade-ready button,.arcade-results button{border-radius:99px;background:#d4ffb6;color:#284e3c;border:0;padding:16px 34px;font-size:16px;font-weight:850;box-shadow:0 5px 0 #77ab72,0 10px 26px #0b26384a;min-height:52px}.arcade-ready button:active,.arcade-results button:active{transform:translateY(2px)}.arcade-results{background:#182238f2}.result-stars{font-size:37px;letter-spacing:5px;color:#ffe3a2}.result-stats{display:flex;gap:28px;margin:5px 0 24px}.result-stats b{display:block;font-size:29px;color:#ceffed}.result-stats span{font-size:10px;color:#d5d9ec}.arcade-time-track{height:4px;background:var(--ui-soft)}#arcade-time-fill{height:100%;width:0;background:linear-gradient(90deg,#76d7b5,#a7b1ff)}.arcade-bottom{display:flex;align-items:center;justify-content:space-between;padding:16px 23px;gap:15px;flex-wrap:wrap}.arcade-controls,.arcade-transport{margin:0;gap:9px}.arcade-controls .arcade-pad{width:62px;min-width:52px;height:66px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:var(--ui-soft);border:1px solid var(--ui-border);border-radius:17px;box-shadow:0 3px 0 var(--ui-border);color:var(--ui-text);touch-action:none;user-select:none}.arcade-pad svg{width:28px;height:28px;fill:var(--arrow);stroke:var(--ui-text);stroke-width:1.4}.arcade-pad small{font-size:8px;letter-spacing:.9px;font-weight:850}.arcade-pad:active{transform:translateY(2px);background:var(--ui-selected)}.arcade-transport button{font-size:12px;border-radius:12px;padding:12px 15px}.arcade-timing{display:flex;align-items:center;gap:7px;font-size:8px;letter-spacing:1px;font-weight:800;color:var(--ui-muted)}.arcade-timing>div{width:92px;height:7px;border-radius:10px;background:linear-gradient(90deg,#edb6a9,#a7dbbd 42%,#a7dbbd 58%,#e9c097);position:relative}.arcade-timing>div:before{content:'';position:absolute;height:13px;width:2px;top:-3px;left:50%;background:var(--ui-text);opacity:.35}#arcade-timing-marker{position:absolute;top:-4px;left:50%;height:15px;width:5px;transform:translateX(-50%);border-radius:5px;background:var(--ui-text);border:1px solid var(--ui-panel)}#arcade-message{padding:0 18px 15px;margin:0;font-size:12px;min-height:30px;color:var(--ui-muted)}.road-upcoming{position:absolute;top:61px;left:50%;transform:translateX(-50%);z-index:4;display:flex;gap:7px}.road-cue{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;width:43px;height:48px;background:#28374cbf;border:1px solid #efffe64d;border-radius:14px;color:#ffdf9f;opacity:.65}.road-cue.next{background:#26364be8;border:2px solid #fff0bf;opacity:1;box-shadow:0 4px 14px #24433f2b}.road-cue.jump{color:#e6d4ff}.road-cue b{font-size:27px;line-height:1}.road-cue small{font-size:7px;letter-spacing:1px;font-weight:800}.road-cue.next:after{content:'';position:absolute;bottom:0;left:0;height:3px;width:var(--cue-progress,0%);background:#fff0bf}.road-cue.next.jump:after{background:#e4ceff}.road-flat{position:absolute;inset:0;background:url('/arcade-art/road.svg') center/cover}.flat-car{position:absolute;bottom:10%;left:50%;background:#b5f2db;color:#255b57;border:4px solid white;border-radius:40%;padding:14px;font-size:40px;transform:translateX(-50%);transition:left .14s ease}.arcade-help{border:1px solid var(--ui-border);background:var(--ui-panel);border-radius:23px;padding:24px;margin:20px 0}.arcade-help h2{font-size:20px}.arcade-help>div{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.arcade-help p{font-size:13px;line-height:1.7;color:var(--ui-muted)}.arcade-help b{display:block;color:var(--ui-text);font-size:15px;margin-bottom:6px}.journey-heading{display:flex;justify-content:space-between;align-items:center;gap:18px}.journey-heading h2{font-size:25px;letter-spacing:-.6px;margin:7px 0}.journey-heading .eyebrow{font-size:9px;letter-spacing:1.5px}.journey-heading button{font-size:11px}.arrow-journey{padding:27px;margin-top:28px;border-radius:25px}#arrow-journey-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.arrow-level{border-radius:18px;padding:17px 14px;gap:6px 9px;min-height:146px;transition:transform .15s ease,border-color .15s ease}.arrow-level:not(:disabled):hover{transform:translateY(-3px);border-color:var(--ui-accent)}.arrow-level>b{font-size:19px;align-self:start;grid-row:1/5}.arrow-level>strong{font-size:13px;line-height:1.3}.arrow-level>small{font-size:9px;line-height:1.5}.arrow-level>span{font-size:9px}.arrow-level .level-stars{font-size:16px;letter-spacing:2px;color:var(--ui-accent)}.arrow-level:disabled{opacity:.65}.journey-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;border-top:1px solid var(--ui-border);padding-top:15px}.journey-footer small{font-size:11px;color:var(--ui-muted)}.journey-footer button{font-size:11px}.rhythm-arcade button:focus-visible{outline:3px solid var(--ui-accent);outline-offset:4px}
@media(max-width:900px){.arrow-ambient b{font-size:40px}.arcade-timing{display:none}#arrow-journey-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.arcade-heading{margin:17px 0}.arcade-heading h1{font-size:33px}.arcade-heading .eyebrow{font-size:8px}.arcade-heading h1 span{font-size:12px}.arcade-heading>button{font-size:11px;padding:10px}.arcade-modebar{gap:10px}.arcade-modebar p{order:3;flex-basis:100%;font-size:10px}.arcade-tabs button{font-size:12px;padding:9px 14px}.arcade-hud{padding:14px 15px;gap:7px;min-height:73px}.arcade-hud>div:first-child,.arcade-hud>div:last-child{min-width:55px}.arcade-hud strong{font-size:21px}.arcade-track-info>strong{font-size:11px}.arcade-track-info>span{font-size:8px}.arcade-stage{height:clamp(340px,54dvh,500px)}.arrow-ambient{display:none}.arcade-bottom{justify-content:center;padding:13px;gap:12px}.arcade-controls .arcade-pad{width:56px;height:59px}.arcade-transport button{padding:10px 12px}.arcade-ready,.arcade-results{padding:24px 17px}.arcade-ready p,.arcade-results p{font-size:12px}.result-stats{gap:20px}.result-stats b{font-size:25px}.arcade-help>div{grid-template-columns:1fr;gap:0}.journey-heading{align-items:start;flex-direction:column;gap:6px}.arrow-journey{padding:17px}#arrow-journey-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.arrow-level{padding:14px 10px;grid-template-columns:24px 1fr}.journey-footer{align-items:start;flex-direction:column}.arcade-feedback,.arrow-stage .arcade-feedback{font-size:19px}}
@media(max-height:650px) and (min-width:700px){.arcade-stage{height:300px}.arcade-heading{margin:12px 0}.arcade-hud{min-height:60px;padding:10px 20px}.arcade-bottom{padding:10px 18px}}
@media(prefers-reduced-motion:reduce){.arrow-level,.flat-car{transition:none}.arrow-level:not(:disabled):hover{transform:none}}
#road-effects{position:absolute;inset:0;z-index:5;pointer-events:none}.delivery-spark{position:absolute;bottom:22%;color:#fff6b7;background:#214b498c;border:1px solid #eaffd878;border-radius:99px;padding:9px 16px;font-size:22px;font-weight:850;white-space:nowrap;text-shadow:0 2px 4px #273448;animation:delivery-pop 650ms ease-out both}@keyframes delivery-pop{from{opacity:1;transform:translate(-50%,0) scale(.85)}35%{opacity:1;transform:translate(-50%,-12px) scale(1.1)}to{opacity:0;transform:translate(-50%,-45px) scale(1)}}@media(prefers-reduced-motion:reduce){.delivery-spark{animation:none;transform:translateX(-50%)}}
/* Hit-driven light: short responses, no continuously animated scenery. */
.arrow-stage .arrow-highway{border-left:1px solid #b5a4ff80;border-right:1px solid #7ef7de80;box-shadow:-12px 0 40px #8259ef18,12px 0 40px #43e1cf18,inset 0 0 45px #8d79f312}
.arrow-stage .arrow-goal-line{height:4px;background:linear-gradient(90deg,#fc84d4,#a796ff,#6debd5,#ffdd91);box-shadow:0 0 12px #b4a5ff,0 0 28px #a389ff80}
.arrow-target svg{filter:drop-shadow(0 0 7px var(--arrow))}
.arrow-target.hit{animation:arcade-target-pop .32s ease-out;filter:brightness(1.5) drop-shadow(0 0 17px var(--arrow))}
.arrow-target.holding{filter:brightness(1.4) drop-shadow(0 0 16px var(--arrow))}
.arrow-burst .hit-beam{position:absolute;bottom:0;left:-36px;width:72px;height:220px;pointer-events:none;border-radius:50% 50% 8px 8px;background:linear-gradient(0deg,var(--arrow),transparent 95%);opacity:0;animation:arcade-hit-beam .48s ease-out}
.arrow-burst .hit-ring.outer{animation-delay:.065s;border-width:2px}
.arrow-burst .hit-spark{filter:drop-shadow(0 0 4px var(--arrow))}
.arrow-burst.milestone .hit-beam{height:330px;width:110px;left:-55px}
.arrow-burst .hit-points{font-size:19px;text-shadow:0 2px 4px #151c37,0 0 13px var(--arrow)}
#arcade-audio-status{margin:4px 18px 14px;padding:12px 15px;border-radius:12px;border:1px solid var(--ui-accent);background:var(--ui-soft);color:var(--ui-text);font-size:14px;line-height:1.5}
@keyframes arcade-hit-beam{0%{opacity:.65;transform:scaleY(.4);transform-origin:bottom}100%{opacity:0;transform:scaleY(1)}}
@keyframes arcade-target-pop{0%{transform:translateX(-50%) scale(1)}35%{transform:translateX(-50%) scale(1.16)}100%{transform:translateX(-50%) scale(1)}}
.fx-reduced .arrow-target.hit,.motion-off .arrow-target.hit,.motion-off .delivery-spark{animation:none!important}
@media(prefers-reduced-motion:reduce){.arrow-target.hit,.arrow-burst .hit-beam{animation:none!important}.arrow-burst .hit-beam{display:none}}
/* Night coast: static compressed backdrop behind the actual 3D road. */
.arcade-stage.road-stage{background:#101c3b url('/road-art/night-coast.webp') center center/cover no-repeat;isolation:isolate}
.road-stage canvas{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%}
.road-stage .arcade-ready{background:linear-gradient(0deg,#07132cd9,#14284722 90%)}
.road-stage .arcade-ready h2{text-shadow:0 3px 15px #05101d}
.road-stage .arcade-ready p{padding:9px 15px;background:#0e1e3a99;border-radius:13px}
.road-stage .arcade-beat-dots{z-index:5;background:#172748c4;border-color:#a5cbe954;backdrop-filter:none}
.road-stage .road-upcoming{top:58px;gap:10px}
.road-cue{background:#122440e8;border-color:#ffeac566;box-shadow:0 4px 18px #05112a65}
.road-cue.next{background:#173954;border-color:#ffe8a9;box-shadow:0 0 15px #e8bc6040}
.road-cue.jump.next{background:#3d3163;border-color:#d5b5ff}
.road-stage .arcade-feedback{background:#12233bba;border:1px solid #a7d8d94a;border-radius:100px;padding:6px 15px;bottom:20px}
.road-stage .arcade-feedback:empty{display:none}
.road-stage #road-effects{z-index:5}
.road-stage .road-flat{z-index:1;background-image:url('/road-art/night-coast.webp');overflow:hidden}
.road-flat:before{content:'';position:absolute;inset:36% 2% 0;background:linear-gradient(90deg,transparent 32.5%,#b8d4e69c 33%,transparent 33.5%,transparent 65.5%,#b8d4e69c 66%,transparent 66.5%),linear-gradient(#243249,#14213a);clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);border-bottom:3px solid #6adcc3}
.road-flat .flat-car{z-index:2;box-shadow:0 0 18px #71e4d159;border-radius:32% 32% 22% 22%;color:#214c54;background:#80e5cf;border-color:#dbfcf4}
.delivery-spark.still{animation:none;transform:translateX(-50%)}
@media(max-width:600px){.road-stage .road-upcoming{gap:5px}.road-stage .road-cue{width:40px;height:45px}.road-stage .arcade-ready p{max-width:300px}}
/* Cover art and world-space feedback replace the old shaded verdict bar. */
.road-stage .arcade-ready{align-items:flex-start;text-align:left;padding:clamp(24px,5vw,60px);background:linear-gradient(90deg,#08182fde,transparent 80%),url('/road-art/night-drive-cover.webp') center/cover}
.road-stage .arcade-ready>span{background:#172a4cbf;padding:7px 12px;border:1px solid #a8f5da70;border-radius:99px;letter-spacing:1.6px}
.road-stage .arcade-ready h2{max-width:420px;font-size:clamp(31px,4.5vw,58px);text-shadow:0 3px 20px #071223}
.road-stage .arcade-ready p{max-width:350px;background:none;padding:0;color:#f5f4e9;text-shadow:0 2px 10px #051023}
.road-stage .arcade-feedback{position:absolute!important;left:0!important;top:0!important;bottom:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;margin:0!important;padding:0!important;border:0!important;background:none!important}
.road-flat .flat-car{font-size:0;width:110px;height:110px;padding:0;background:transparent url('/road-art/player-car-v2.webp') center/contain no-repeat;border:0;border-radius:0;box-shadow:none}
@media(max-width:600px){.road-stage .arcade-ready{background-position:65% center}.road-stage .arcade-ready h2{max-width:255px}.road-stage .arcade-ready p{max-width:230px;font-size:12px}}
.road-engine-volume{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:800;color:var(--ui-text)}
.road-engine-volume input{width:85px;accent-color:#59bd9e;min-height:35px;cursor:pointer}
