:root{--ink: #f2f6ff;--muted: #a9b4cc;--cy: #2ef3ff;--mg: #ff3ad0;--yl: #ffd23a;--panel: rgba(10, 8, 24, .68);--line: rgba(46, 243, 255, .35);--font: Orbitron, "Noto Sans JP", system-ui, sans-serif;--jf: "Noto Sans JP", system-ui, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;background:#05030f;color:var(--ink);font-family:var(--jf);user-select:none;-webkit-user-select:none;overscroll-behavior:none;touch-action:none}#game{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;display:block}button{font-family:var(--jf);font-weight:800;font-size:16px;color:var(--ink);background:var(--panel);border:1.5px solid var(--line);border-radius:6px;padding:11px 18px;cursor:pointer;transform:skew(-8deg);transition:background .15s,border-color .15s;backdrop-filter:blur(6px)}button>*{display:inline-block}button:hover,button:focus-visible{background:#281e50d9;border-color:var(--cy);outline:none}button.primary{background:linear-gradient(90deg,#2ef3ffd9,#ff3ad0d9);color:#08040f;border-color:#fff}button small{font-size:11px;font-weight:700;opacity:.8;margin-left:8px}#menu{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom));background:linear-gradient(90deg,#05030fb3,#05030f26 60%,#05030f00);overflow-y:auto;z-index:10}#menu.show{display:flex}.screen{display:none;width:min(780px,100%);text-align:center;animation:rise .3s ease-out}.screen.show{display:flex;flex-direction:column;align-items:center;gap:14px;margin:auto}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.logo h1{margin:0;font-family:var(--font);font-weight:900;font-style:italic;font-size:clamp(44px,10vw,110px);letter-spacing:.04em;background:linear-gradient(180deg,#fff 10%,#9ff8ff 45%,#ff5ad8 95%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 20px rgba(46,243,255,.6))}.logo p{margin:6px 0 0;font-weight:900;letter-spacing:.4em;color:var(--yl);font-size:clamp(13px,2.4vw,20px);text-shadow:0 0 12px rgba(255,210,58,.6)}h2{margin:0;font-family:var(--font);font-style:italic;font-size:clamp(24px,4.5vw,40px);color:var(--cy);text-shadow:0 0 16px rgba(46,243,255,.6)}.btns{display:flex;flex-direction:column;gap:10px;width:min(360px,100%)}.btns .row{display:flex;gap:10px}.btns .row button{flex:1}.btns.row2{flex-direction:row;flex-wrap:wrap;justify-content:center;width:100%}.foot,.lead{color:var(--muted);font-size:12px;margin:0}.lead{font-size:14px}.hint.portrait{display:none;color:var(--yl);margin:0;font-weight:700}@media(orientation:portrait)and (pointer:coarse){.hint.portrait{display:block}}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:100%}.cards button{display:flex;flex-direction:column;gap:6px;padding:18px 10px}.cards b{font-size:19px}.cards span{font-family:var(--font);font-size:12px;color:var(--muted)}.cards i{font-style:normal;font-size:12px;color:var(--yl)}.cards button.primary span,.cards button.primary i{color:#1a0a20}.trk.neon{border-color:#ff3ad099}.trk.canyon{border-color:#ffa03cb3}.trk.aurora{border-color:#5affc899}.trk .th{font-family:var(--jf)!important}.trk .rec{color:var(--yl)!important;font-size:11px!important}.panel{background:var(--panel);border:1.5px solid var(--line);border-radius:10px;padding:14px 18px;width:100%;text-align:left;backdrop-filter:blur(8px)}dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0 0 10px;font-size:14px}dt{color:var(--cy);font-weight:800}dd{margin:0}ul{margin:0;padding-left:18px;font-size:13px;color:var(--muted)}.form{display:flex;flex-direction:column;gap:12px;max-width:440px}.form label{display:flex;justify-content:space-between;align-items:center;gap:12px}.form label.chk{justify-content:flex-start}input[type=range]{width:55%;accent-color:var(--cy)}input[type=checkbox]{width:20px;height:20px;accent-color:var(--cy)}select{background:#140c2a;color:var(--ink);border:1px solid var(--line);padding:6px 8px;font-family:var(--jf)}.rows{max-width:560px;padding:8px 14px}.rr{display:grid;grid-template-columns:34px 1fr auto auto 46px;gap:10px;align-items:center;padding:6px 4px;border-bottom:1px solid rgba(46,243,255,.12);font-size:14px}.rr .p{font-family:var(--font);font-weight:900;font-size:18px;color:var(--cy)}.rr .t,.rr .b,.rr .pt{font-family:var(--font);font-size:12px}.rr .b{color:var(--muted)}.rr .pt{color:var(--yl);text-align:right}.rr.me{background:linear-gradient(90deg,rgba(255,58,208,.25),transparent)}#gpRows .rr{grid-template-columns:34px 1fr 60px}#trophy{font-size:72px;line-height:1;filter:drop-shadow(0 0 20px rgba(255,210,58,.7))}#hud{display:none;position:fixed;inset:0;pointer-events:none;z-index:5;font-family:var(--font)}#hud.show{display:block}#hud button{pointer-events:auto}.tl{position:absolute;left:max(16px,env(safe-area-inset-left));top:max(12px,env(safe-area-inset-top));text-shadow:0 2px 8px rgba(0,0,0,.8)}.posbox b{font-size:62px;font-weight:900;font-style:italic;line-height:1;color:#fff;text-shadow:0 0 18px rgba(46,243,255,.8)}.posbox span{font-size:20px;color:var(--muted)}#lap{font-size:18px;font-weight:800;color:var(--yl)}.tr{position:absolute;right:max(16px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top));display:flex;gap:12px;align-items:flex-start}.times{display:grid;grid-template-columns:auto auto;gap:2px 10px;font-size:13px;text-shadow:0 2px 6px rgba(0,0,0,.8)}.times span{color:var(--muted);font-size:11px;align-self:center}.times b{text-align:right}#bPause{width:42px;height:42px;padding:0;border-radius:50%;transform:none}#mini{position:absolute;left:max(14px,env(safe-area-inset-left));bottom:max(14px,env(safe-area-inset-bottom));width:180px;height:180px;background:#05030f59;border-radius:50%}#speedo{position:absolute;right:max(18px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));width:220px;text-align:right;text-shadow:0 2px 8px rgba(0,0,0,.8)}#speedo .num b{font-size:58px;font-weight:900;font-style:italic}#speedo .num span{font-size:14px;color:var(--muted);margin-left:6px}#speedo.boost .num b{color:var(--cy);text-shadow:0 0 20px rgba(46,243,255,.9)}.bar{height:8px;background:#ffffff1f;margin-top:6px;transform:skew(-20deg);overflow:hidden}.bar i{display:block;height:100%;width:0}.bar.en i{background:linear-gradient(90deg,#2ef3ff,#ff3ad0)}.bar.dr{height:5px}.bar.dr i.lv0{background:#fff}.bar.dr i.lv1{background:#5ac8ff}.bar.dr i.lv2{background:#ffa030}.bar.dr i.lv3{background:#c060ff}.lbl{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);margin-top:3px}#count{position:absolute;left:50%;top:36%;transform:translate(-50%,-50%) scale(1);font-size:120px;font-weight:900;font-style:italic;color:#fff;text-shadow:0 0 30px rgba(255,58,208,.9);opacity:0}#count.show{opacity:1;animation:pop 1s infinite}@keyframes pop{0%{transform:translate(-50%,-50%) scale(1.4)}to{transform:translate(-50%,-50%) scale(.9)}}#msg{position:absolute;left:50%;top:24%;transform:translate(-50%);font-family:var(--jf);font-size:34px;font-weight:900;font-style:italic;letter-spacing:.06em;text-shadow:0 0 18px currentColor,0 2px 6px rgba(0,0,0,.9);white-space:nowrap;transition:opacity .2s}#touch{display:none}body.touch #touch{display:block}.steer{position:absolute;left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom));display:flex;gap:12px}.steer button,.acts button{pointer-events:auto;transform:none;border-radius:50%;touch-action:none;font-family:var(--font)}.steer button{width:84px;height:84px;font-size:30px;background:#0a081873}.acts{position:absolute;right:max(12px,env(safe-area-inset-right));bottom:max(120px,calc(env(safe-area-inset-bottom) + 112px));display:grid;grid-template-columns:70px 84px;grid-template-rows:64px 84px;gap:10px}#tBrake{grid-column:1;grid-row:1;font-size:11px;width:64px;height:64px}#tBoost{grid-column:2;grid-row:1;font-size:12px;width:70px;height:70px;border-color:#2ef3ffcc}#tDrift{grid-column:1 / span 2;grid-row:2;width:100%;height:84px;border-radius:42px;font-size:16px;border-color:#ff3ad0cc;background:#ff3ad02e}.acts button.on,.steer button.on{background:#2ef3ff66}body.touch #mini{left:auto;right:max(14px,env(safe-area-inset-right));top:96px;bottom:auto;width:120px;height:120px}body.touch #speedo{right:50%;transform:translate(50%);bottom:max(10px,env(safe-area-inset-bottom));width:180px;text-align:center}body.touch #speedo .num b{font-size:40px}@media(max-width:640px){.cards{grid-template-columns:1fr}.posbox b{font-size:46px}#msg{font-size:24px}.times{font-size:11px}#count{font-size:90px}.rr{grid-template-columns:28px 1fr auto 40px}.rr .b{display:none}}@media(max-height:480px){.screen.show{gap:8px}.logo h1{font-size:52px}button{padding:8px 14px;font-size:14px}.cards button{padding:10px 8px}body.touch #mini{top:70px;width:100px;height:100px}.acts{bottom:max(10px,env(safe-area-inset-bottom));right:120px}body.touch .acts{right:max(12px,env(safe-area-inset-right))}}@media(orientation:portrait){body.touch #speedo{bottom:max(108px,calc(env(safe-area-inset-bottom) + 100px))}body.touch .acts{bottom:max(200px,calc(env(safe-area-inset-bottom) + 190px))}}
