:root{color-scheme:dark;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;background:#080a0c;color:#ede9e3}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:0;cursor:pointer;background:#0b0e11a8}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid #d1c4a6;outline-offset:4px}button:disabled{opacity:.45;cursor:wait}[hidden]{display:none!important}#carGame{height:100dvh;width:100vw;position:relative;overflow:hidden}#scene{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.vignette,#flash{position:absolute;inset:0;pointer-events:none}.vignette{background:radial-gradient(ellipse at 50% 40%,transparent 36%,#0206098c 100%)}#flash{background:#fff6dc;opacity:0}header{position:absolute;top:max(26px,env(safe-area-inset-top));left:28px;right:28px;display:flex;align-items:center;gap:20px;font-size:11px;letter-spacing:.08em;z-index:3;text-shadow:0 2px 5px #000}header .back{color:#dadbd2b0}header nav{margin-left:auto;display:flex;gap:8px}header button{padding:9px 12px;font-size:10px;border:1px solid #ffffff12;border-radius:2px}.episode{color:#dadbd2}.overlay{position:absolute;inset:0;display:grid;place-items:center;text-align:center;background:#05090baa;backdrop-filter:blur(5px);padding:28px;z-index:6}.eyebrow{font:10px ui-monospace,monospace;letter-spacing:.32em;color:#c9b993;margin:0 0 24px}h1{font-weight:500;font-size:clamp(38px,5.3vw,78px);letter-spacing:.07em;line-height:1.35;margin:0 0 24px}h2{font-weight:500;font-size:clamp(24px,3.7vw,48px);line-height:1.7;letter-spacing:.045em}.lead{color:#bcbab3;font-size:12px;letter-spacing:.1em;line-height:2; margin:0 0 30px}.primary{padding:15px 30px;background:#d9cbaa;color:#1b1d1a;letter-spacing:.13em;font-size:12px;border-radius:1px}.primary:hover{background:#f1e0b8}.small{font-size:10px;color:#bdb8a170;min-height:14px;margin-top:18px;letter-spacing:.08em}#status{position:absolute;top:82px;left:28px;display:flex;align-items:center;gap:20px;font-size:11px;letter-spacing:.15em;color:#dadbd2b0}#alarm{color:#fb7353;animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.4}}#aim{position:absolute;top:50%;left:50%;translate:-50% -50%;width:7px;height:7px;border:1px solid #fff8;border-radius:50%;pointer-events:none;box-shadow:0 0 6px #0008}#feedback{position:absolute;left:0;right:0;bottom:172px;text-align:center;color:#e8dfc9;pointer-events:none;font-size:12px;letter-spacing:.10em;text-shadow:0 1px 6px #000;transition:opacity .2s}#charge{position:absolute;left:50%;top:calc(50% + 24px);translate:-50% 0;width:72px;height:3px;background:#ffffff20;opacity:0;pointer-events:none}#charge i{display:block;height:100%;width:0;background:#edc575}.bottom{position:absolute;bottom:max(34px,env(safe-area-inset-bottom));left:0;right:0;text-align:center;pointer-events:none}.views,.actions{display:flex;justify-content:center;gap:8px;pointer-events:auto}.views button{padding:10px 16px;font-size:10px;letter-spacing:.08em;border:1px solid #ffffff18;backdrop-filter:blur(8px)}.views button[aria-pressed=true]{color:#edd6a1;border-color:#c5ac7040;background:#181710d9}.hint{font-size:10px;letter-spacing:.1em;color:#ced0c0a0;text-shadow:0 1px 6px #000;margin:12px 0 18px}#finish{padding:12px 20px;color:#dfd7c0;font-size:11px;border:1px solid #b9ac8040}.resultBack{display:block;margin-top:22px;font-size:11px;color:#bcbab3}.credits{position:absolute;bottom:10px;right:16px;z-index:8;font-size:8px;color:#adb5b075;max-width:420px}.credits[open]{padding:14px;background:#080b10e8;color:#bbc1b9;font-size:10px}.credits p{line-height:1.8}.credits a{text-decoration:underline}#errorText{font-size:12px;line-height:1.8;color:#bbb}@media(max-width:650px){header{left:16px;right:16px;top:18px;gap:9px}.episode{font-size:9px}header nav{gap:3px}header button{padding:7px 6px;font-size:9px}#status{left:16px;top:60px}.bottom{bottom:30px}.views button{padding:10px 12px}.hint{font-size:9px;letter-spacing:.01em}.credits{font-size:7px;right:10px;max-width:300px}#feedback{bottom:172px}}@media(prefers-reduced-motion:reduce){#alarm{animation:none}}

@media(max-width:420px){header{flex-wrap:wrap;gap:6px}.episode{order:3;flex-basis:100%;font-size:9px}header .back{font-size:10px}#status{top:81px}.views button{font-size:9px;padding:9px 10px}.hint{font-size:8px;letter-spacing:0}.credits{max-width:250px}}

#status{flex-wrap:wrap;gap:12px}#timer{font:12px ui-monospace,monospace;color:#efcf9a}#goals{position:absolute;top:116px;left:28px;display:flex;flex-direction:column;gap:6px;pointer-events:none}.goal{display:flex;align-items:center;gap:8px;font-size:10px;color:#dedbd0;text-shadow:0 1px 4px #000}.goal meter{width:64px;height:6px;accent-color:#d9b57c}.goal.done{color:#c6dfac}#ownerWarning{position:absolute;left:0;right:0;top:30%;text-align:center;color:#ff7f57;font-weight:bold;text-shadow:0 2px 8px #000;pointer-events:none}#aim{transition:none}.views{flex-wrap:wrap;padding:0 12px}.views button{padding:9px 12px}body[data-owner=arrived] #timer{color:#ff795e}body[data-phase=playing] #charge{display:none}@media(max-width:650px){#goals{left:16px;top:106px}.goal{font-size:9px}.goal meter{width:42px}#status{max-width:85%;font-size:10px;gap:8px}#timer{font-size:10px}.views{gap:5px}.views button{padding:8px 9px;font-size:9px}.hint{margin:10px 10px 13px;line-height:1.7}.bottom{bottom:29px}}@media(max-width:420px){#goals{top:125px}.goal{font-size:8px;gap:5px}#timer{font-size:9px}}

#ownerCaption{position:absolute;left:12px;right:12px;bottom:16%;text-align:center;font-size:clamp(18px,3vw,34px);letter-spacing:.10em;color:#fff0d7;text-shadow:0 2px 8px #000;pointer-events:none;z-index:5}body[data-phase=confrontation] .vignette{background:radial-gradient(ellipse,transparent 30%,#170702aa)}
