*{box-sizing:border-box}
:root{--bg:#0b0b0d;--card:#18181b;--line:#ffffff12;--orange:#f4801f;--deep:#c85f0f;--white:#f5f4f2;--muted:#98959e;--red:#ff5b5b}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--white);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{background:radial-gradient(circle at 50% -10%,#f4801f1c,transparent 34rem),linear-gradient(180deg,#0d0d0f,#09090b 75%)}
button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}
.wrap{width:min(850px,100%);margin:auto;padding:26px 18px 60px}.top{display:flex;gap:16px;align-items:flex-start;margin-bottom:18px}
.back{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:14px;background:#ffffff08;color:#fff;text-decoration:none;font-size:22px}
.eyebrow{font-size:11px;font-weight:900;letter-spacing:.18em;color:var(--orange);margin:2px 0 5px}h1{font-size:clamp(27px,5vw,42px);line-height:1;margin:0 0 8px;letter-spacing:-.04em}.top p{margin:0;color:var(--muted);line-height:1.5}
.game-card,.result{border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,#18181b,#111113);box-shadow:0 24px 70px #0008;overflow:hidden}
.hud{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}
.stat{background:#151517;padding:13px 8px;text-align:center}.stat small{display:block;color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.14em;margin-bottom:4px}.stat strong{font-size:18px}.stat:last-child strong{color:var(--orange)}
.road{position:relative;width:min(520px,100%);height:590px;margin:auto;overflow:hidden;touch-action:none;user-select:none;background:#242429;border-left:12px solid #d8d8d8;border-right:12px solid #d8d8d8;box-shadow:inset 0 0 50px #0009}
.road:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#ffffff05 0 33.33%,transparent 33.33% 66.66%,#ffffff05 66.66%),linear-gradient(180deg,#ffffff05,#00000012)}
.lane-line{position:absolute;z-index:1;top:-100px;width:5px;height:800px;background:repeating-linear-gradient(180deg,#fff 0 42px,transparent 42px 82px);opacity:.7;animation:roadMove .7s linear infinite}
.l1{left:33.333%}.l2{left:66.666%}@keyframes roadMove{to{transform:translateY(82px)}}
.player{position:absolute;z-index:8;bottom:28px;left:50%;width:64px;height:105px;transform:translateX(-50%);transition:left .14s cubic-bezier(.2,.9,.3,1)}
.car-body{position:absolute;inset:10px 5px 5px;border-radius:19px 19px 13px 13px;background:linear-gradient(90deg,#c85f0f,#f4801f 45% 60%,#b9530c);border:2px solid #ffad66;box-shadow:0 8px 15px #0008}
.car-glass{position:absolute;z-index:2;left:15px;right:15px;top:19px;height:28px;border-radius:10px 10px 5px 5px;background:#171d25;border:2px solid #ffffff25}
.car-light{position:absolute;z-index:3;bottom:12px;width:12px;height:6px;border-radius:3px;background:#ffefb5;box-shadow:0 0 8px #fff6}.car-light.left{left:12px}.car-light.right{right:12px}
.car-wheel{position:absolute;z-index:-1;width:10px;height:25px;border-radius:4px;background:#050506;bottom:13px}.wl{left:0}.wr{right:0}
.object{position:absolute;z-index:6;width:62px;height:96px;transform:translateX(-50%);will-change:top}
.object.car:before{content:"";position:absolute;inset:4px;border-radius:15px;background:linear-gradient(90deg,#555,#8b8b91,#45454a);border:2px solid #aaa;box-shadow:0 8px 14px #0007}
.object.car:after{content:"";position:absolute;left:15px;right:15px;top:16px;height:27px;border-radius:8px;background:#161a20;border:2px solid #ffffff20}
.object.barrier{height:68px}.object.barrier:before{content:"";position:absolute;inset:7px 2px;background:repeating-linear-gradient(135deg,#f4801f 0 13px,#f4f4f4 13px 26px);border:3px solid #29292e;border-radius:8px;box-shadow:0 8px 14px #0007}
.callout{position:absolute;z-index:12;left:50%;top:14px;transform:translateX(-50%);padding:8px 13px;border-radius:999px;background:#0b0b0dcc;border:1px solid #ffffff16;font-size:12px;font-weight:1000;letter-spacing:.07em;white-space:nowrap}.callout.good{color:#72e69b}.callout.bad{color:#ff7777}
.overlay{position:absolute;z-index:20;inset:0;display:grid;place-items:center;padding:22px;background:#09090be6;backdrop-filter:blur(7px)}.overlay.hidden{display:none}
.overlay-box{width:min(410px,100%);text-align:center;padding:28px;border:1px solid var(--line);border-radius:22px;background:#151517e8;box-shadow:0 20px 70px #000a}.overlay-box .big{font-size:52px}.overlay-box h2{font-size:28px;margin:6px 0 10px}.overlay-box p{color:var(--muted);line-height:1.55;margin:0 auto 20px}
.primary,.secondary,.controls button{border:0;border-radius:13px;font-weight:1000;cursor:pointer}.primary{min-height:48px;padding:0 22px;color:#fff;background:linear-gradient(135deg,var(--orange),var(--deep));box-shadow:0 10px 28px #f4801f2c}
.controls{display:grid;grid-template-columns:72px 1fr 72px;align-items:center;gap:10px;padding:12px;background:#111113;border-top:1px solid var(--line)}.controls button{height:54px;background:#232327;border:1px solid #ffffff15;color:#fff;font-size:25px}.controls button:active{background:#f4801f33;transform:scale(.97)}.controls div{text-align:center;color:var(--muted);font-size:10px}.controls span{display:block;margin:2px}
.result{margin-top:18px;padding:28px;text-align:center}.result.hidden{display:none}.result-kicker{color:var(--orange);font-size:10px;font-weight:1000;letter-spacing:.18em}.result h2{font-size:38px;margin:7px 0}.result>p{color:var(--muted);margin:0 0 20px}
.reward{width:min(480px,100%);margin:0 auto 20px;padding:20px;border:1px solid #f4801f40;border-radius:18px;background:#f4801f0b}.reward small{display:block;color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.15em}.reward strong{display:block;font-size:20px;color:var(--orange);margin:6px 0 12px}.code{font:900 24px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;padding:13px;border-radius:12px;background:#09090b;border:1px dashed #f4801f66;word-break:break-all}.secondary{min-height:45px;margin-top:10px;padding:0 18px;background:#252529;color:#fff;border:1px solid var(--line)}.reward p{font-size:11px;color:var(--muted);margin:9px 0 0}.again{display:block;margin:0 auto 14px}.games-link{color:var(--muted);text-decoration:none;font-size:12px}
@media(max-width:620px){.wrap{padding:16px 10px 40px}.top{gap:10px}.top p{font-size:13px}.stat{padding:10px 3px}.stat strong{font-size:15px}.road{height:570px;border-left-width:7px;border-right-width:7px}.controls{grid-template-columns:70px 1fr 70px}}
