@font-face{font-family:Bungee;src:url(/assets/bungee-latin-400-Dfnurram.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Overpass;src:url(/assets/overpass-latin-wght-qAR8M_co.woff2)format("woff2-variations"),url(/assets/overpass-latin-wght-qAR8M_co.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#1b2236;--night:#161d38;--asphalt:#262e4a;--asphalt-2:#313a5b;--asphalt-3:#434c74;--cream:#f7ecd8;--cream-2:#e8d8b9;--cream-dim:#c8bfae;--turquoise:#3bb3a6;--turquoise-deep:#23857b;--coral:#f0685a;--coral-deep:#c94b40;--amber:#f5b63f;--amber-deep:#c98a1a;--sign:#17714f;--sign-deep:#0e5039;--brake:#ff4b3e;--lilac:#b79be6;--plate:#11141e;--road:#2c3452;--road-light:#384265;--road-dark:#232a44;--sky-0:#1b2247;--sky-1:#2c2c63;--sky-2:#5d417f;--sky-3:#b85d7d;--sky-4:#ec8762;--sky-5:#f6b56a;--sky-6:#f8cf86;--sun-core:#fff1c2;--sun-rim:#ffd37e;--star:#f7ecd873;--alley-0:#232552;--alley-1:#4b3a74;--alley-2:#8d5579;--alley-3:#c46f72;--lamp-red:var(--brake);--lamp-amber:#ffc24a;--lamp-green:#58e08f;--led-red:#ff5a4a;--lamp-off:#3a3f5e;--led-off:#1c2236;--lamp-housing:#0d1120;--lamp-hurry:#6b4a12;--plate-frame:#e6e1d4;--plate-text:#f6f2e8;--plate-hint:#9aa1bb;--amber-hover:#ffc65a;--merah-deep:#5a2a32;--macet:var(--coral);--lancar:var(--turquoise);--tikus:var(--amber);--merah:var(--brake);--nyasar:var(--lilac);--font-display:"Bungee", "Overpass", system-ui, sans-serif;--font-ui:"Overpass", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--radius-m:14px;--edge:inset 0 -5px 0 #0003;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-1:.12s;--dur-2:.22s;--gutter:16px;--app-h:100dvh}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--night);color:var(--cream);font-family:var(--font-ui);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;touch-action:manipulation;font-size:16px;line-height:1.45}button,input{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--cream);outline-offset:3px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.tiko{overflow:visible}.tiko [data-eye],.tiko .tk-mouth,.tiko .tk-sweat{display:none}.tiko[data-mood=idle] [data-eye=idle],.tiko[data-mood=idle] [data-mouth=smile],.tiko[data-mood=focus] [data-eye=focus],.tiko[data-mood=focus] [data-mouth=flat],.tiko[data-mood=happy] [data-eye=happy],.tiko[data-mood=happy] [data-mouth=grin],.tiko[data-mood=wink] [data-eye=wink],.tiko[data-mood=wink] [data-mouth=grin],.tiko[data-mood=annoyed] [data-eye=annoyed],.tiko[data-mood=annoyed] [data-mouth=flat],.tiko[data-mood=annoyed] .tk-sweat,.tiko[data-mood=shock] [data-eye=shock],.tiko[data-mood=shock] [data-mouth=o],.tiko[data-mood=dizzy] [data-eye=dizzy],.tiko[data-mood=dizzy] [data-mouth=wave]{display:inline}.tiko .tk-wheel{transform-box:fill-box;transform-origin:50%}.tiko .tk-tail{transform-box:view-box;transform-origin:35px 49px;animation:tk-tail 1.6s var(--ease-in-out) infinite alternate}.tiko .tk-scarf{transform-box:view-box;transform-origin:49px 29px;animation:.5s ease-in-out infinite alternate tk-scarf}.tiko .tk-head{transform-box:view-box;transform-origin:62px 30px}@keyframes tk-tail{0%{transform:rotate(-6deg)}to{transform:rotate(8deg)}}@keyframes tk-scarf{0%{transform:rotate(-4deg)scaleX(.92)}to{transform:rotate(5deg)scaleX(1.06)}}@media (prefers-reduced-motion:reduce){.tiko .tk-tail,.tiko .tk-scarf{animation:none}}[data-motion=reduce] .tiko .tk-tail,[data-motion=reduce] .tiko .tk-scarf{animation:none}.scene{isolation:isolate;contain:layout paint;background:var(--sky-0);-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.scene-sky{background:linear-gradient(180deg, var(--sky-0) 0px, var(--sky-1) calc(var(--horizon-y,70%) * .42), var(--sky-2) calc(var(--horizon-y,70%) * .66), var(--sky-3) calc(var(--horizon-y,70%) * .82), var(--sky-4) calc(var(--horizon-y,70%) * .93), var(--sky-5) var(--horizon-y,70%), var(--sky-6) 100%);position:absolute;inset:0}.sky-stars{width:2px;height:2px;box-shadow:8vw 2vh 0 var(--star), 17vw 7vh 0 var(--star), 29vw 3vh 0 var(--star), 41vw 9vh 0 var(--star), 52vw 1vh 0 var(--star), 63vw 6vh 0 var(--star), 74vw 2vh 0 var(--star), 86vw 8vh 0 var(--star), 94vw 4vh 0 var(--star), 35vw 13vh 0 var(--star), 79vw 12vh 0 var(--star), 12vw 14vh 0 var(--star);background:0 0;border-radius:50%;position:absolute;top:6%;left:0}.sky-sun{left:70%;top:var(--sun-y,60%);aspect-ratio:1;background:radial-gradient(circle at 50% 50%, var(--sun-core) 0 34%, var(--sun-rim) 35% 48%, #ffbe6e73 49%, #ffaa6e00 70%);border-radius:50%;width:min(40vw,250px);position:absolute;transform:translate(-50%,-50%)}.sky-clouds{left:-10%;top:calc(var(--horizon-y,70%) * .38);width:140%;height:calc(var(--horizon-y,70%) * .42);animation:140s linear infinite clouds;position:absolute}@keyframes clouds{0%{transform:translate(0,0)}to{transform:translate(-25%)}}.scene-world{will-change:transform;position:absolute;left:0}.scene-layer{will-change:transform;position:absolute;top:0;left:0}.scene-layer>svg{width:100%;height:100%;display:block}.layer-far{z-index:1}.layer-mid{z-index:2}.layer-street{z-index:3}.layer-near{z-index:45;pointer-events:none}.sp,.car,.tiko-wrap{will-change:transform;position:absolute;top:0;left:0}.sp{z-index:6;visibility:hidden}.sp>svg,.car>svg,.tiko-wrap>svg{display:block;overflow:visible}.car[data-dir=oncoming]>svg{transform:scaleX(-1)}.car .vh-wheel,.tiko-wrap .tk-wheel{transform-box:fill-box;transform-origin:50%}.car .vh-brake{transition:fill .12s linear}.car[data-braking="1"] .vh-brake{fill:var(--brake)}.car[data-braking="1"][data-dir=ours]{filter:drop-shadow(-4px 0 6px #ff4b3e73)}.sp-light .lamp{fill:var(--lamp-off);transition:fill .12s linear}.sp-light .glow{opacity:0;transition:opacity .16s linear}.sp-light .glow-red{fill:#ff4b3e61}.sp-light .glow-amber{fill:#ffc24a66}.sp-light .glow-green{fill:#58e08f5c}[data-light=red] .sp-light .lamp-red,.sp-wrap-light[data-light=red] .lamp-red{fill:var(--lamp-red)}.sp-wrap-light[data-light=amber] .lamp-amber{fill:var(--lamp-amber)}.sp-wrap-light[data-light=green] .lamp-green{fill:var(--lamp-green)}.sp-wrap-light[data-light=red] .glow-red,.sp-wrap-light[data-light=amber] .glow-amber,.sp-wrap-light[data-light=green] .glow-green{opacity:1}.seg{fill:var(--led-off)}.seg.on{fill:currentColor}.sp-wrap-light[data-light=red] .sp-digits{color:var(--led-red)}.sp-wrap-light[data-light=amber] .sp-digits{color:var(--lamp-amber)}.sp-wrap-light[data-light=green] .sp-digits{color:var(--lamp-green)}.blink-red{animation:1.6s step-end infinite blink-red}@keyframes blink-red{50%{opacity:.15}}.bulb{animation:.9s ease-in-out infinite alternate bulb}.bulb:nth-of-type(2n){animation-delay:-.45s}@keyframes bulb{to{opacity:.35}}.steam{animation:2.4s ease-in-out infinite steam}@keyframes steam{0%{opacity:0;transform:translateY(4px)}40%{opacity:.7}to{opacity:0;transform:translateY(-10px)}}.laundry{transform-box:fill-box;transform-origin:top;animation:1.8s ease-in-out infinite alternate laundry}.laundry:nth-of-type(3n){animation-delay:-.9s}@keyframes laundry{0%{transform:rotate(-4deg)}to{transform:rotate(5deg)}}.tiko-wrap .tiko[data-blink="1"] [data-eye]{display:none}.tiko-wrap .tiko[data-blink="1"][data-mood=idle] [data-eye=wink]{display:inline}.alley-overlay{z-index:50;visibility:hidden;background:linear-gradient(180deg, var(--alley-0) 0%, var(--alley-1) 34%, var(--alley-2) 62%, var(--alley-3) 100%);position:absolute;inset:0}.speed-lines{z-index:66;pointer-events:none;opacity:0;-webkit-mask-image:linear-gradient(90deg, transparent, var(--ink) 20%, var(--ink) 80%, transparent);mask-image:linear-gradient(90deg, transparent, var(--ink) 20%, var(--ink) 80%, transparent);background-image:linear-gradient(90deg,#0000 0 40%,#fff4dc8c 40% 60%,#0000 60%),linear-gradient(90deg,#0000 0 30%,#fff4dc59 30% 70%,#0000 70%);background-position:0 34%,0 58%;background-repeat:repeat-x;background-size:220px 2px,320px 2px;animation:.35s linear infinite speed-lines;position:absolute;inset:0}@keyframes speed-lines{to{background-position:-220px 34%,-320px 58%}}.honk-bubble{z-index:70;border:2.5px solid var(--ink);background:var(--cream);color:var(--ink);font-family:var(--font-display);letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;border-radius:12px;padding:3px 9px 1px;font-size:clamp(11px,2.6vw,15px);position:absolute;top:0;left:0;box-shadow:0 4px 10px #080b1a59}.honk-bubble:after{content:"";background:var(--cream);border-right:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);width:10px;height:10px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)rotate(45deg)}.puff{z-index:14;opacity:0;pointer-events:none;background:#e8e2f4bf;border-radius:50%;width:14px;height:14px;position:absolute}.spark{z-index:68;opacity:0;pointer-events:none;width:18px;height:18px;position:absolute}.spark svg{width:100%;height:100%;overflow:visible}.spark-0 path{fill:var(--amber);stroke:var(--ink);stroke-width:1.4px}.spark-1 path{fill:var(--turquoise);stroke:var(--ink);stroke-width:1.4px}.spark-2 path{fill:var(--coral);stroke:var(--ink);stroke-width:1.4px}[data-motion=reduce] .sky-clouds,[data-motion=reduce] .bulb,[data-motion=reduce] .steam,[data-motion=reduce] .laundry,[data-motion=reduce] .blink-red,[data-motion=reduce] .speed-lines{animation:none}.car[data-dir=oncoming] text{transform-box:fill-box;transform-origin:50%;transform:scaleX(-1)}.sky-birds{top:calc(var(--sun-y,50%) - 90px);width:64px;height:26px;animation:26s linear infinite birds;position:absolute;left:-80px;overflow:visible}.bird{transform-box:fill-box;transform-origin:50%;animation:.6s ease-in-out infinite alternate flap}.bird:nth-child(2n){animation-delay:-.3s}@keyframes birds{0%{transform:translate(0,0)}to{transform:translate(calc(100vw + 160px),-40px)}}@keyframes flap{to{transform:scaleY(.4)}}[data-motion=reduce] .sky-birds{display:none}.home,.game,.results{left:0;right:0;top:var(--app-top,0px);height:var(--app-h,100dvh);background:var(--night);position:fixed}.btn{border:3px solid var(--ink);border-radius:var(--radius-m);min-height:48px;font-family:var(--font-display);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;transition:transform var(--dur-1) var(--ease-out), box-shadow var(--dur-1) var(--ease-out), background-color var(--dur-2) linear;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:8px;padding:3px 20px 0;font-size:16px;line-height:1;display:inline-flex}.btn svg{flex:none;margin-top:-3px}.btn-primary{background:var(--amber);color:var(--ink);box-shadow:var(--edge), 0 8px 18px #080b1a6b}.btn-ghost{background:var(--asphalt-2);color:var(--cream);box-shadow:var(--edge), 0 4px 10px #080b1a4d}.btn-danger{background:var(--coral);color:var(--ink);box-shadow:var(--edge)}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:inset 0 -2px #0003,0 2px 6px #080b1a4d}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}@media (hover:hover){.btn-primary:hover:not(:disabled){background:var(--amber-hover)}.btn-ghost:hover:not(:disabled),.icon-btn:hover{background:var(--asphalt-3)}}.btn-hero{border-radius:18px;width:100%;min-height:62px;font-size:clamp(20px,5.6vw,26px)}.btn-wide{flex:100%}.icon-btn{border:2.5px solid var(--ink);background:var(--asphalt-2);width:44px;height:44px;color:var(--cream);box-shadow:var(--edge);border-radius:12px;flex:none;place-items:center;display:grid}.icon-btn-glass{background:#1b2236b8}.home{grid-template-rows:minmax(0,1fr) auto;display:grid;overflow:hidden}.home-stage{min-height:0;position:relative}.home-scene{position:absolute;inset:0}.home-shade{pointer-events:none;background:linear-gradient(#161d3880 0%,#161d3800 34%);position:absolute;inset:0}.home-top{top:max(14px, env(safe-area-inset-top));left:var(--gutter);right:var(--gutter);justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:absolute}.home-logo{width:clamp(190px,54vw,330px);animation:logo-in .7s var(--ease-out) both;margin:0}.home-logo svg{filter:drop-shadow(0 10px 16px #080b1a80);transform-origin:50% 0;width:100%;height:auto;animation:sign-sway 5s var(--ease-in-out) .9s infinite alternate;display:block}@keyframes logo-in{0%{opacity:0;transform:translateY(-24px)rotate(-6deg)}}@keyframes sign-sway{0%{transform:rotate(-1.2deg)}to{transform:rotate(1.2deg)}}.home-tools{gap:8px;display:flex}.tagline{left:var(--gutter);top:calc(max(14px, env(safe-area-inset-top)) + clamp(74px, 22vw, 136px));max-width:calc(100% - 2 * var(--gutter));border:3px solid var(--ink);background:var(--cream);color:var(--ink);transform-origin:0 0;animation:banner-in .7s var(--ease-out) .25s both;border-radius:4px;gap:2px;margin:0;padding:9px 14px 7px;font-size:clamp(15px,4.3vw,21px);font-weight:800;line-height:1.3;display:grid;position:absolute;transform:rotate(-1.2deg);box-shadow:0 10px 20px #080b1a73}.tagline:before,.tagline:after{content:"";background:var(--ink);width:2px;height:14px;position:absolute;top:-14px}.tagline:before{left:10px;transform:rotate(-18deg)}.tagline:after{right:10px;transform:rotate(18deg)}.tag-line{display:block}.tagline mark{color:var(--ink);border-radius:3px;padding:0 4px}.tag-macet{background:var(--coral)}.tag-melesat{background:var(--amber)}@keyframes banner-in{0%{opacity:0;transform:translateY(-16px)rotate(-6deg)}}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}}.home-dock{padding:16px var(--gutter) max(16px, env(safe-area-inset-bottom));background:var(--night);border-top:3px solid var(--ink);gap:12px;display:grid;position:relative;box-shadow:0 -10px 24px #080b1a59}.dock-meta{color:var(--cream-dim);flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0;font-size:15px;display:flex}.dock-chip{background:var(--sign);color:var(--cream);font-family:var(--font-display);letter-spacing:.02em;border-radius:6px;padding:3px 8px 1px;font-size:13px}.dock-pitch{flex-wrap:wrap;justify-content:center;gap:2px 0;display:flex}.dock-pitch span{white-space:nowrap}.dock-pitch span:not(:last-child):after{margin:0 10px}.dock-pitch,.dock-next,.dock-done{color:var(--cream-dim);text-align:center;margin:0;font-size:15px}.dock-done{color:var(--cream);font-size:17px}.dock-done b{font-family:var(--font-display);color:var(--amber);font-weight:400}.dock-clock{font-variant-numeric:tabular-nums;color:var(--cream);font-weight:800}.dock-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.dock-stats{color:var(--cream-dim);justify-content:center;gap:18px;margin:0;font-size:14px;display:flex}.dock-stats span{align-items:center;gap:5px;display:inline-flex}.dock-stats svg{color:var(--amber)}@media (min-width:760px){.home-dock{grid-template-columns:minmax(0,420px) minmax(0,340px);justify-content:center;align-items:center;column-gap:28px}.dock-meta,.home-dock .btn-hero,.dock-pitch,.dock-done,.dock-next{grid-column:1}.dock-row,.dock-stats{grid-column:2}.dock-row{grid-row:2}.dock-stats{grid-row:3;justify-content:flex-start}}.game{grid-template-rows:auto minmax(110px,1fr) auto;display:grid;overflow:hidden}.hud{padding:max(8px, env(safe-area-inset-top)) 10px 8px;background:var(--night);border-bottom:3px solid var(--ink);z-index:2;align-items:center;gap:10px;display:flex}.hud-score{flex:none;justify-items:end;min-width:52px;line-height:1;display:grid}.hud-score-num{font-family:var(--font-display);color:var(--amber);font-variant-numeric:tabular-nums;font-size:22px}.hud-score-unit{letter-spacing:.06em;text-transform:uppercase;color:var(--cream-dim);font-size:11px;font-weight:700}.game-scene{min-height:0}.panel{z-index:2;padding:0 var(--gutter) max(12px, env(safe-area-inset-bottom));background:var(--night);grid-template-columns:minmax(0,1fr);gap:10px;display:grid;position:relative}.qsign{border:3px solid var(--ink);background:var(--sign);box-shadow:inset 0 0 0 3px var(--sign), inset 0 0 0 5.5px var(--cream), 0 12px 26px #080b1a80;animation:sign-drop .42s var(--ease-out) both;border-radius:14px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;margin-top:-22px;padding:12px 14px 12px 12px;display:grid;position:relative}@keyframes sign-drop{0%{opacity:0;transform:translateY(-14px)rotate(-1.5deg)}}.qsign-shield{background:var(--ink);clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);width:40px;height:46px;margin-top:2px;position:relative}.qsign-shield span{background:var(--cream);clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);font-family:var(--font-display);color:var(--sign-deep);place-items:start center;padding-top:6px;font-size:20px;display:grid;position:absolute;inset:3px}.qsign-prompt{letter-spacing:-.005em;text-wrap:balance;color:var(--cream);margin:0;font-size:clamp(19px,5.2vw,25px);font-weight:800;line-height:1.2}.qsign-meta{color:var(--cream);flex-wrap:wrap;align-items:center;gap:4px 10px;margin:6px 0 0;font-size:14px;line-height:1.3;display:flex}.qsign-cat{background:var(--sign-deep);font-family:var(--font-display);letter-spacing:.03em;color:var(--cream);border-radius:5px;padding:2px 7px 0;font-size:11px}.answer{grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch;gap:8px;min-width:0;display:grid}.timer{border:3px solid var(--ink);background:var(--lamp-housing);border-radius:12px;align-items:center;gap:6px;padding:0 8px;display:flex}.timer-lamps{gap:3px;display:grid}.timer-lamps i{background:var(--lamp-off);border-radius:50%;width:9px;height:9px;transition:background-color .12s linear;display:block}.timer[data-light=red] .t-red{background:var(--brake);box-shadow:0 0 8px var(--brake)}.timer[data-light=amber] .t-amber{background:var(--lamp-amber);box-shadow:0 0 8px var(--lamp-amber)}.timer[data-light=green] .t-green{background:var(--lamp-green);box-shadow:0 0 8px var(--lamp-green)}.led{width:38px;height:30px;display:block}.led .seg{fill:var(--led-off)}.led .seg.on{fill:currentColor}.timer[data-light=red] .led,.howto-led[data-light=red] .led{color:var(--led-red)}.timer[data-light=amber] .led{color:var(--lamp-amber)}.timer[data-light=green] .led,.howto-led[data-light=green] .led{color:var(--lamp-green)}.timer[data-light=amber]{animation:.5s ease-in-out infinite alternate timer-hurry}@keyframes timer-hurry{to{border-color:var(--lamp-hurry)}}.plate{border:3px solid var(--ink);background:var(--plate);min-width:0;box-shadow:inset 0 0 0 2px var(--plate), inset 0 0 0 4px var(--plate-frame);transition:box-shadow var(--dur-2) var(--ease-out);border-radius:10px;display:flex}.plate:focus-within{box-shadow:inset 0 0 0 2px var(--plate), inset 0 0 0 4px var(--plate-frame), 0 0 0 3px var(--amber)}.plate input{width:100%;min-width:0;color:var(--plate-text);letter-spacing:.06em;text-transform:uppercase;background:0 0;border:0;outline:none;padding:13px 12px 10px;font-size:20px;font-weight:800;line-height:1.2}.plate input::placeholder{color:var(--plate-hint);letter-spacing:.08em}.plate input:disabled{opacity:.6}.btn-gas{border-radius:12px;padding:3px 16px 0;font-size:18px}.feedback{min-height:2.7em;color:var(--cream-dim);text-wrap:pretty;margin:0;font-size:15px;line-height:1.35}.feedback[data-tone=warn]{color:var(--lilac);animation:nudge .36s var(--ease-out)}.feedback[data-tone=info]{color:var(--amber)}@keyframes nudge{20%{transform:translate(-5px)}50%{transform:translate(4px)}75%{transform:translate(-2px)}}.verdict{gap:8px;padding-bottom:2px;display:grid}.stamp{transform-origin:12% 60%;animation:stamp-in .56s var(--ease-out) both;margin:2px 0 0}.vstamp{display:block;overflow:visible}.vstamp-large{filter:drop-shadow(0 9px 12px #080b1a80);width:auto;max-width:100%;height:clamp(66px,19vw,96px);transform:rotate(-2.5deg)}.vstamp-chip{vertical-align:-8px;width:auto;height:28px;margin:0 8px 0 0;display:inline-block;transform:rotate(-3deg)}.vstamp-sheen{animation:sheen 1.1s var(--ease-out) .38s both}@keyframes sheen{0%{transform:translate(0)}to{transform:translate(760px)}}@keyframes stamp-in{0%{opacity:0;transform:scale(1.9)rotate(8deg)}55%{opacity:1;transform:scale(.94)rotate(-1deg)}to{transform:scale(1)}}.verdict-answer{color:var(--cream);flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0;font-size:20px;font-weight:800;display:flex}.verdict-points{font-family:var(--font-display);color:var(--amber);font-variant-numeric:tabular-nums;font-size:22px;font-weight:400}.verdict-dist{color:var(--cream-dim);font-size:14px;font-weight:700}.verdict-line,.verdict-note,.verdict-tip{color:var(--cream-dim);text-wrap:pretty;margin:0;font-size:15px;line-height:1.4}.verdict-line{color:var(--cream)}.verdict-note{background:var(--asphalt);color:var(--cream);border-radius:10px;padding:8px 10px}.verdict-tip b{color:var(--cream)}.btn-next{width:100%;animation:fade-up .4s var(--ease-out) .45s both;margin-top:2px}.meter{gap:3px;display:grid}.meter-track{border:2.5px solid var(--ink);border-radius:8px;height:24px;display:flex;position:relative;overflow:visible}.meter-zone{font-family:var(--font-display);letter-spacing:.04em;color:var(--ink);place-items:center;font-size:10px;display:grid}.zone-macet{background:var(--macet);border-radius:5px 0 0 5px}.zone-lancar{background:var(--lancar)}.zone-tikus{background:var(--tikus);border-radius:0 5px 5px 0}.meter{padding-top:13px}.meter-pin{background:var(--ink);clip-path:polygon(0 0,100% 0,50% 100%);width:18px;height:15px;animation:pin-in .7s var(--ease-out) .2s both;margin-left:-9px;position:absolute;top:-16px}.meter-pin:after{content:"";background:var(--cream);clip-path:polygon(0 0,100% 0,50% 100%);position:absolute;inset:2.5px 3.5px 4.5px}@keyframes pin-in{0%{left:0}}.meter-ends{color:var(--cream-dim);justify-content:space-between;font-size:12px;font-weight:700;display:flex}.route{flex:1;align-items:center;min-width:0;margin:0;padding:0;list-style:none;display:flex}.route-stop{flex:1;justify-content:center;align-items:center;display:flex;position:relative}.route-leg{background:repeating-linear-gradient(90deg, var(--asphalt-3) 0 6px, transparent 6px 10px);height:4px;position:absolute;top:50%;left:-50%;right:50%;transform:translateY(-50%)}.route-stop:first-child .route-leg{display:none}.route-stop[data-state=macet] .route-leg{background:var(--macet)}.route-stop[data-state=lancar] .route-leg{background:var(--lancar)}.route-stop[data-state=jalan-tikus] .route-leg{background:var(--tikus)}.route-stop[data-state=lampu-merah] .route-leg{background:var(--merah-deep)}.route-node{z-index:1;border:2.5px solid var(--ink);background:var(--asphalt-2);border-radius:50%;place-items:center;width:26px;height:26px;display:grid;position:relative}.route-num{color:var(--cream-dim);font-size:12px;font-weight:800}.route-stop[data-state=current] .route-node{background:var(--cream);box-shadow:0 0 0 3px var(--amber);animation:node-pulse 1.4s var(--ease-in-out) infinite alternate}.route-stop[data-state=current] .route-num{color:var(--ink)}.route-stop[data-state=macet] .route-node,.route-stop[data-state=lancar] .route-node,.route-stop[data-state=jalan-tikus] .route-node,.route-stop[data-state=lampu-merah] .route-node{background:var(--cream);animation:node-land .42s var(--ease-out)}@keyframes node-pulse{to{box-shadow:0 0 0 5px #f5b63f59}}@keyframes node-land{0%{transform:scale(.4)}}.results{overscroll-behavior:contain;overflow-y:auto}.results-stage{background:linear-gradient(180deg, var(--sky-0) 0%, var(--sky-1) 30%, var(--sky-2) 52%, var(--sky-3) 70%, var(--sky-4) 84%, var(--sky-5) 100%);height:clamp(230px,44vh,400px);position:relative;overflow:hidden}.finish-svg{width:100%;height:100%;position:absolute;inset:0}.results-flag{top:max(12px, env(safe-area-inset-top));left:var(--gutter);right:var(--gutter);display:flex;position:absolute}.results-flag>span{border:2.5px solid var(--ink);color:var(--cream);background:#1b2236cc;border-radius:8px;padding:5px 10px 3px;font-size:14px;font-weight:700}.results-body{max-width:640px;padding:0 var(--gutter) max(36px, env(safe-area-inset-bottom));gap:16px;margin:-34px auto 0;display:grid;position:relative}.results-title{text-align:center;outline:none;justify-items:center;gap:8px;margin:0;display:grid}.results-score{align-items:baseline;gap:4px;display:inline-flex}.results-score-num{font-family:var(--font-display);color:var(--cream);font-variant-numeric:tabular-nums;-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:2px 2px 0 var(--ink), 4px 4px 0 var(--ink), 6px 6px 0 var(--ink), 8px 12px 20px #080b1a99;font-size:clamp(64px,20vw,110px);font-weight:400;line-height:.9}.results-score-max{font-family:var(--font-display);color:var(--amber);-webkit-text-stroke:1.5px var(--ink);paint-order:stroke fill;font-size:clamp(22px,6vw,34px);font-weight:400}.rank-banner{border:3px solid var(--ink);background:var(--amber);color:var(--ink);font-family:var(--font-display);box-shadow:var(--edge), 0 10px 20px #080b1a73;animation:stamp-in .62s var(--ease-out) .3s both;border-radius:12px;padding:9px 16px 5px;font-size:clamp(18px,5.4vw,28px);font-weight:400;line-height:1.05;display:inline-block;transform:rotate(-2deg)}.results-line{text-align:center;color:var(--cream-dim);text-wrap:balance;margin:0;font-size:16px;line-height:1.45}.results-line b{color:var(--cream)}.share-row{flex-wrap:wrap;gap:10px;display:flex}.share-row .btn-ghost{flex:1 1 0}.share-status{text-align:center;min-height:1.3em;color:var(--turquoise);margin:-6px 0 0;font-size:14px}.stat-strip{color:var(--cream-dim);flex-wrap:wrap;justify-content:center;gap:8px 20px;font-size:15px;display:flex}.stat{align-items:center;gap:6px;display:inline-flex}.stat svg{color:var(--amber)}.stat b{color:var(--cream)}.stat-new{color:var(--amber);font-style:normal;font-weight:800}.breakdown-title{font-family:var(--font-display);color:var(--cream);margin:10px 0 -6px;font-size:18px;font-weight:400}.breakdown{margin:0;padding:0;list-style:none;display:grid}.leg{border-bottom:2px dashed var(--asphalt-2);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 2px;display:grid}.leg-glyph{border:2.5px solid var(--ink);background:var(--cream);border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.leg-body{gap:3px;min-width:0;display:grid}.leg-q{color:var(--cream-dim);font-size:14px;line-height:1.3}.leg-a{color:var(--cream);flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:17px;font-weight:800;display:flex}.leg-none{color:var(--cream-dim);font-weight:700}.leg-label{font-family:var(--font-display);color:var(--ink);background:var(--macet);border-radius:5px;padding:2px 6px 0;font-size:11px;font-weight:400}.leg[data-outcome=lancar] .leg-label{background:var(--lancar)}.leg[data-outcome=jalan-tikus] .leg-label{background:var(--tikus)}.leg[data-outcome=lampu-merah] .leg-label{background:var(--merah);color:var(--cream)}.leg-tag{color:var(--amber);font-size:12px;font-weight:700}.leg-pts{font-family:var(--font-display);color:var(--amber);font-variant-numeric:tabular-nums;font-size:20px}.results-actions{justify-content:center;gap:10px;display:flex}.results-actions .btn{flex:1 1 0;max-width:240px}.results-fine{text-align:center;color:var(--cream-dim);margin:4px 0 0;font-size:13px;line-height:1.4}.fin-waves{animation:4s linear infinite waves}@keyframes waves{to{transform:translate(-40px)}}.fin-sway{transform-box:view-box;animation:palm 3.2s var(--ease-in-out) infinite alternate}@keyframes palm{0%{transform:rotate(-3deg)}to{transform:rotate(3deg)}}.fin-wheel{transform-box:view-box;animation:24s linear infinite wheel}@keyframes wheel{to{transform:rotate(360deg)}}.fin-z{animation:2.4s ease-in-out infinite zzz}.fin-z2{animation-delay:-1.2s}@keyframes zzz{0%{opacity:0;transform:translateY(6px)}40%{opacity:.9}to{opacity:0;transform:translate(10px,-14px)}}.sheet{width:100%;max-width:100%;max-height:92dvh;color:var(--cream);background:0 0;border:0;margin:auto 0 0;padding:0}.sheet::backdrop{background:#080b1a9e}.sheet-inner{max-height:92dvh;padding:16px var(--gutter) max(20px, env(safe-area-inset-bottom));border:3px solid var(--ink);background:var(--asphalt);animation:sheet-up .34s var(--ease-out);border-bottom:0;border-radius:22px 22px 0 0;overflow-y:auto}@keyframes sheet-up{0%{opacity:0;transform:translateY(40px)}}.sheet-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.sheet-head h2{font-family:var(--font-display);margin:0;font-size:22px;font-weight:400}@media (min-width:720px){.sheet{width:520px;margin:auto}.sheet-inner{border:3px solid var(--ink);border-radius:22px}}.howto{gap:10px;display:grid}.howto-stage{border:2.5px solid var(--ink);background:linear-gradient(180deg, var(--sky-1) 0%, var(--sky-2) 55%, var(--sky-3) 100%);min-height:170px;animation:fade-up .36s var(--ease-out);border-radius:16px;place-items:center;padding:12px;display:grid}.howto-art{width:100%;max-width:300px;height:auto}.howto-tiko{width:170px;height:auto}.howto-light{align-items:center;gap:14px;display:flex}.howto-led{border:3px solid var(--ink);background:var(--lamp-housing);border-radius:10px;padding:8px 10px}.howto-led .led{width:70px;height:56px}.howto-examples{gap:8px;width:100%;display:grid}.howto-q{text-align:center;margin:0;font-size:15px;font-weight:800}.howto-examples ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.howto-examples li{border:2px solid var(--ink);background:#161d38d1;border-radius:10px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;padding:6px 10px;display:grid}.ex-a{font-weight:800}.ex-l{font-family:var(--font-display);color:var(--macet);font-size:11px}.howto-examples li[data-outcome=lancar] .ex-l{color:var(--lancar)}.howto-examples li[data-outcome=jalan-tikus] .ex-l{color:var(--tikus)}.ex-p{font-family:var(--font-display);color:var(--amber)}.howto-title{font-family:var(--font-display);margin:6px 0 0;font-size:20px;font-weight:400;line-height:1.15}.howto-body{color:var(--cream-dim);text-wrap:pretty;margin:0;font-size:16px;line-height:1.45}.howto-nav{justify-content:space-between;align-items:center;gap:12px;margin-top:6px;display:flex}.dots{gap:4px;display:flex}.dot{background:0 0;border:0;place-items:center;width:28px;height:28px;padding:0;display:grid}.dot:before{content:"";border:2px solid var(--ink);background:var(--asphalt-3);width:10px;height:10px;transition:width var(--dur-2) var(--ease-out), background-color var(--dur-2);border-radius:50%}.dot[aria-current=true]:before{background:var(--amber);border-radius:6px;width:22px}.settings{gap:14px;display:grid}.set-row{border:0;border-bottom:2px dashed var(--asphalt-2);justify-content:space-between;align-items:center;gap:14px;margin:0;padding:0 0 14px;display:flex}.set-col{justify-content:stretch;gap:8px;display:grid}.set-label{margin:0;padding:0;font-size:17px;font-weight:800}.set-help{color:var(--cream-dim);margin:2px 0 0;font-size:14px;line-height:1.45}.set-warn{color:var(--coral);margin:0;font-size:14px}.set-ok{color:var(--turquoise);margin:0;font-weight:700}.switch{border:2.5px solid var(--ink);background:var(--asphalt-3);width:58px;height:34px;transition:background-color var(--dur-2);border-radius:999px;flex:none;padding:0;position:relative}.switch[aria-checked=true]{background:var(--turquoise)}.switch-knob{border:2px solid var(--ink);background:var(--cream);width:23px;height:23px;transition:transform var(--dur-2) var(--ease-out);border-radius:50%;position:absolute;top:3px;left:3px}.switch[aria-checked=true] .switch-knob{transform:translate(24px)}.segmented{border:2.5px solid var(--ink);border-radius:12px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.seg-opt{position:relative}.seg-opt input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.seg-opt span{text-align:center;background:var(--asphalt-2);place-items:center;min-height:44px;padding:4px 6px;font-size:14px;font-weight:700;display:grid}.seg-opt+.seg-opt span{border-left:2px solid var(--ink)}.seg-opt input:checked+span{background:var(--amber);color:var(--ink)}.seg-opt input:focus-visible+span{outline:3px solid var(--cream);outline-offset:-5px}.confirm-row{gap:10px;display:flex}@media (min-width:760px){.panel{width:min(720px,100%);margin:0 auto}.hud{padding-inline:max(16px,50vw - 450px)}.qsign-prompt{font-size:26px}}@media (min-width:1024px){.panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;column-gap:22px;width:min(1100px,100%)}.panel .qsign{grid-row:1/span 2}.panel .verdict{padding-top:6px}.panel .answer{margin-top:6px}}@media (min-height:760px) and (min-width:760px){.game{grid-template-rows:auto minmax(200px,1fr) auto}}:root[data-keyboard=open] .qsign{margin-top:-14px;padding-block:9px}:root[data-keyboard=open] .qsign-meta{display:none}:root[data-keyboard=open] .feedback{min-height:1.4em}[data-motion=reduce] *,[data-motion=reduce] :before,[data-motion=reduce] :after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){:root:not([data-motion=full]) *,:root:not([data-motion=full]) :before,:root:not([data-motion=full]) :after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.sep,.dock-pitch span:not(:last-child):after{content:"";vertical-align:middle;opacity:.6;background:currentColor;border-radius:50%;width:4px;height:4px;margin:0 8px;font-size:0;display:inline-block}.home,.game{grid-template-columns:minmax(0,1fr)}@media (max-width:360px){:root{--gutter:12px}.hud{gap:6px;padding-inline:8px}.hud .icon-btn{width:40px;height:40px}.route-hud .route-node{border-width:2px;width:20px;height:20px}.route-hud .route-node svg{width:13px;height:13px}.route-num{font-size:10px}.hud-score{min-width:40px}.hud-score-num{font-size:19px}.timer{gap:4px;padding:0 6px}.led{width:32px}.btn-gas{padding-inline:12px;font-size:16px}.plate input{padding-inline:9px;font-size:18px}}.route-road{width:100%;height:auto;margin:2px 0;display:block;overflow:visible}@media (max-width:360px){.btn{letter-spacing:.01em;gap:6px;padding-inline:12px}.btn-hero{min-height:56px;font-size:19px}.dock-row .btn{font-size:14px}.dock-row .btn svg{width:18px;height:18px}.plate input,.plate input::placeholder{letter-spacing:.03em}}.share-street{pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}
