.arcade{--arc-glow:var(--accent,#b59aff);color:var(--text);overflow-wrap:anywhere}.arc-banner{padding:24px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(125deg,var(--panel),var(--bg));box-shadow:inset 0 0 45px #9068ec22}.arc-marquee{letter-spacing:.18em;font-size:12px;color:var(--accent);font-weight:800}.arc-banner h3{font-size:clamp(24px,4vw,38px);margin:12px 0}.arc-setup{padding:20px 0;display:flex;gap:16px;flex-wrap:wrap;align-items:end}.arc-setup label{display:grid;gap:8px;min-width:180px}.arc-setup p{flex-basis:100%;margin:0}.arc-hud{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:16px;border-bottom:2px solid var(--accent)}.arcade progress{width:100%;height:10px;accent-color:var(--accent)}.arcade button{min-height:48px;white-space:normal}.arcade button:focus-visible,.arcade textarea:focus-visible,.arcade input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.arcade label{display:grid;gap:8px;margin:12px 0}.arcade textarea{width:100%;box-sizing:border-box}.arc-options,.arc-kit,.arc-tags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.arc-option,.arc-supply,.arc-node,.arc-tag,.arc-hotspot{padding:16px;border:2px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text);font:inherit;text-align:left;cursor:pointer}.arcade [aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.arcade button:disabled{cursor:default;opacity:.7}.arc-review{padding:20px;margin:18px 0;border-left:4px solid var(--accent);background:var(--panel);border-radius:8px}.arc-finish{text-align:center;padding:24px}.arc-trophy{font-size:64px;color:var(--accent)}.arc-finish ul{text-align:left}.arc-city{height:210px;position:relative;display:flex;justify-content:space-around;align-items:start;padding-top:28px;background:linear-gradient(#172b43,#30425d);border-radius:18px;overflow:hidden;color:white}.arc-road{position:absolute;bottom:25px;left:0;right:0;height:65px;background:#16202b;border-top:3px dashed #d1d6dd;border-bottom:3px dashed #d1d6dd}.arc-ambulance{position:absolute;bottom:40px;font-size:42px;animation:arc-arrive 1s ease-out}.arc-building{text-align:center;letter-spacing:.08em;font-size:25px}.arc-track{display:flex;gap:12px;margin:18px 0}.arc-track span{display:grid;place-items:center;width:36px;height:36px;border:2px solid var(--line);border-radius:50%}.arc-track .lit{border-color:var(--accent);background:var(--panel)}.arc-dispatch{display:block;padding:14px;border-left:4px solid var(--accent);background:var(--panel)}.arc-drop{padding:24px;border:3px dashed var(--accent);border-radius:16px;min-height:100px}.arc-wiring{display:grid;grid-template-columns:1fr 1fr;gap:28px}.arc-wiring>div{display:grid;align-content:start;gap:12px}.arc-node{width:100%}.arc-node small,.arc-wire-label{display:block;margin:6px 0}.arc-node.connected{border-style:dashed}.arc-correct{border-color:#3eae7a!important}.arc-wrong{border-color:#df6d7c!important}.arc-original{max-width:100%;background:white}.arc-monitor{position:relative;overflow:hidden;border:3px solid var(--accent);border-radius:16px;background:#111}.arc-sweep{position:absolute;inset:0 auto 0 0;width:3px;background:#73ffc7;box-shadow:0 0 24px 8px #4af29a66;animation:arc-sweep 8s linear infinite}.arc-monitor.frozen .arc-sweep,.arc-paused *{animation-play-state:paused!important}.arc-conveyor{padding:15px;border-radius:16px;border-top:6px dashed var(--accent);border-bottom:6px dashed var(--accent);background:var(--panel);overflow:hidden}.arc-conveyor .arc-option{animation:arc-bob 3s ease-in-out infinite}.arc-conveyor .arc-option:nth-child(even){animation-delay:-1.5s}.arc-incident{padding:20px;background:var(--panel);border-radius:16px}.arc-incident>span{font-size:32px}.arc-patient{border:2px solid var(--accent);padding:20px;border-radius:16px;margin-top:16px;cursor:grab}.arc-tag{border-left-width:12px}.tag-0{border-left-color:#e56573}.tag-1{border-left-color:#d5b33e}.tag-2{border-left-color:#4ca36e}.tag-3{border-left-color:#777}.arc-scene{padding:24px;background:linear-gradient(140deg,var(--panel),var(--bg));border:2px solid var(--line);border-radius:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.arc-scene h3{grid-column:1/-1}.arc-hotspot span{display:block;font-size:36px;margin-bottom:10px}.arc-hotspot{transform:rotate(calc((var(--spot) - 1)*1deg))}.arc-handoff{display:grid;grid-template-columns:1fr 1fr;gap:16px}#arcPauseNotice{padding:60px;text-align:center;background:var(--panel)}@keyframes arc-arrive{from{transform:translateX(-70px)}to{transform:translateX(0)}}@keyframes arc-sweep{to{left:100%}}@keyframes arc-bob{50%{transform:translateY(5px)}}@media(prefers-reduced-motion:reduce){.arcade *{animation:none!important;scroll-behavior:auto!important}}@media(max-width:600px){.arc-options,.arc-kit,.arc-tags,.arc-handoff{grid-template-columns:1fr}.arc-wiring{gap:8px}.arc-node{padding:10px;font-size:14px}.arc-hud{gap:8px}.arc-scene{padding:12px;gap:10px}.arc-hotspot{padding:12px}.arc-city{height:160px}.arc-setup label{width:100%}}

.arc-menu-card{border-top:3px solid var(--accent)}.arc-menu-card .icon:after{content:" ARCADE";font-size:12px;letter-spacing:.15em}.arc-ambulance.upgraded{filter:drop-shadow(0 0 12px #ffc44c)}
/* Playable action boards */
.arc-hud{position:sticky;top:0;z-index:5;background:var(--bg);border-radius:14px;box-shadow:0 8px 24px #0002}
#arcCombo{font-weight:800;color:var(--accent)}.arc-burst{font-weight:900;border-radius:8px;padding:6px 10px}.arc-hit{background:#174c36;color:#d2ffe4}.arc-miss{background:#493522;color:#ffe4ba}
.arc-drive{position:relative;max-width:650px;height:340px;margin:18px auto;background:linear-gradient(90deg,#16392d 0 5%,#202a3e 5% 95%,#16392d 95%);border:3px solid #435a72;border-radius:20px;overflow:hidden;touch-action:pan-y}
.arc-lane-lines{position:absolute;inset:0;background:repeating-linear-gradient(to bottom,transparent 0 26px,#edf2ff88 26px 56px) 33.333% 0/3px 84px repeat-y,repeating-linear-gradient(to bottom,transparent 0 26px,#edf2ff88 26px 56px) 66.666% 0/3px 84px repeat-y}
.moving .arc-lane-lines{animation:arc-road-scroll .5s linear infinite}.arc-car{position:absolute;bottom:8%;font-size:44px;transform:translateX(-50%);transition:left .12s ease;filter:drop-shadow(0 0 10px #8db4ff)}.arc-road-object{position:absolute;font-size:36px;color:#ffe181;transform:translateX(-50%);text-shadow:0 0 16px #dca82b}.arc-road-object.cone{color:#ff9466;text-shadow:0 0 12px #fa8047}.arc-drive-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#142238bb;color:white;font-size:clamp(22px,5vw,40px);font-weight:900;letter-spacing:.06em}.arc-drive-overlay[hidden]{display:none}
.arc-drive-controls{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:12px;margin:16px 0}.arc-drive-controls button{min-height:58px;font-weight:800}.arc-catcher{position:relative;padding:16px 12px 76px;background:linear-gradient(180deg,#15263a,#0b1423);border:2px solid #526481;border-radius:18px;overflow:hidden}.arc-med-lanes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.arc-med-card{color:#eff6ff;background:#223d58;border:2px solid #537491;border-radius:12px;padding:16px 8px;min-height:140px!important;font:inherit;font-weight:800;cursor:pointer;overflow-wrap:anywhere}.arc-med-card span{display:block;font-size:32px;color:#a5e2e6;margin-bottom:14px}.arc-med-card[aria-pressed=true]{background:#244f59;border-color:#93eee0!important;box-shadow:0 0 18px #65ffe82a!important}.arc-collector{position:absolute;bottom:10px;font-size:55px;color:#8ae6d6;transform:translateX(-50%);transition:left .16s ease}.arc-caught{animation:arc-catch .35s ease-out forwards}
.arc-track .lit{box-shadow:0 0 16px color-mix(in srgb,var(--accent) 25%,transparent)}.arc-option:active,.arc-hotspot:active{transform:scale(.97)}.arc-finish{border:2px solid var(--accent);border-radius:20px;background:radial-gradient(ellipse at top,#9578ef22,transparent 75%)}.arc-trophy{filter:drop-shadow(0 0 18px #dfba6044)}
@keyframes arc-road-scroll{to{background-position:33.333% 84px,66.666% 84px}}@keyframes arc-catch{to{transform:translateY(22px) scale(.88);opacity:.6}}
@media(max-width:600px){.arc-drive{height:285px}.arc-med-lanes{gap:5px}.arc-med-card{font-size:12px;padding:10px 3px}.arc-drive-controls{gap:6px}.arc-drive-controls button{padding:10px 6px;font-size:13px}.arc-hud{position:static}.arc-catcher{padding-left:5px;padding-right:5px}}
@media(prefers-reduced-motion:reduce){.arc-car,.arc-collector{transition:none}.arc-caught,.moving .arc-lane-lines{animation:none}.arc-drive{scroll-behavior:auto}}
