:root{--bg:#0a0a0b;--panel:#111113;--panel-2:#17171a;--line:#26262b;--line-strong:#3a3a40;--text:#f2f2f2;--muted:#9b9ba3;--dim:#5e5e66;--accent:#ff5a1f;--accent-ink:#0b0b0c;--accent-2:#5ad1ff;--danger:#ff4d4d;--ok:#7cfc9a;--panel-a:#111113e0;--font-display:"Barlow Condensed", "Arial Narrow", Impact, sans-serif;--font-body:"Barlow", "Segoe UI", Arial, sans-serif;--sa-t:env(safe-area-inset-top,0px);--sa-r:env(safe-area-inset-right,0px);--sa-b:env(safe-area-inset-bottom,0px);--sa-l:env(safe-area-inset-left,0px);--gutter:clamp(16px, 3vw, 48px);--gutter-y:clamp(14px, 3vh, 36px)}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;font:400 16px/1.45 var(--font-body);color:var(--text);touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}canvas#game{width:100%;height:100%;display:block;position:fixed;inset:0}#ui{pointer-events:none;position:fixed;inset:0}#ui>*{pointer-events:none}#ui .clickable,#ui button{pointer-events:auto}.scroll{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;overflow-y:auto}.kb,.tp{display:none}body:not(.touch) .kb,body.touch .tp{display:initial}body:not(.touch) div.kb,body.touch div.tp{display:block}button{font:inherit;color:inherit;border-radius:0}h1,h2,h3,p,ul{margin:0}img{display:block}kbd{border:1px solid var(--line-strong);background:var(--panel-2);min-width:2em;height:30px;font:600 15px/1 var(--font-body);color:var(--text);white-space:nowrap;border-radius:2px;justify-content:center;align-items:center;padding:0 8px;display:inline-flex}kbd.empty{color:var(--muted);border-style:dashed}kbd.fixed{border-color:var(--line);color:var(--muted)}.fade{z-index:40;background:var(--bg);opacity:0;transition:opacity .4s;position:absolute;inset:0}.fade.on{opacity:1}.h1{font:italic 800 clamp(48px, 9vw, 120px)/.9 var(--font-display);text-transform:uppercase;letter-spacing:-.01em}.h1.card-title{font-size:clamp(44px,6vw,84px)}.h1.wordmark{font-family:var(--font-body);letter-spacing:-.03em;font-size:clamp(44px,7vw,110px)}.tagline{font:600 clamp(12px, 1.1vw, 15px)/1.3 var(--font-body);letter-spacing:.36em;text-transform:uppercase;color:var(--muted);margin-top:14px}.h3{font:italic 800 clamp(28px, 2.2vw, 34px)/.95 var(--font-display);text-transform:uppercase;letter-spacing:-.01em}.accent{color:var(--accent)}.eyebrow,.label{font:600 12px/1.3 var(--font-body);text-transform:uppercase;letter-spacing:.18em}.eyebrow{color:var(--accent)}.label{color:var(--muted)}.index{font:500 12px/1 var(--font-body);letter-spacing:.08em;color:var(--dim)}.sub{color:var(--muted);font-size:15px}.value{font-size:18px;font-weight:600}.card{background:var(--panel);border:1px solid var(--line);border-radius:2px}.rule{background:var(--line);flex:none;height:1px}.pill{border:1px solid var(--accent);height:30px;color:var(--accent);font:600 11px/1 var(--font-body);text-transform:uppercase;letter-spacing:.18em;white-space:nowrap;border-radius:2px;align-items:center;padding:0 12px;display:inline-flex}.stack{flex-direction:column;gap:12px;width:100%;max-width:420px;display:flex}.row-buttons{flex-wrap:wrap;gap:12px;display:flex}.row-buttons .btn-primary{flex:240px}.screen .btn-primary{background:var(--accent);width:100%;height:64px;color:var(--accent-ink);font:700 24px/1 var(--font-body);text-align:left;cursor:pointer;border:0;border-radius:2px;outline:none;align-items:center;padding:0 64px 0 24px;transition:filter .12s;display:flex;position:relative}.screen .btn-primary .arrow{font-size:26px;line-height:1;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.screen .btn-primary:hover{filter:brightness(1.08)}.screen .btn-primary:active{filter:brightness(.94)}.screen .btn-primary.focus,.screen .btn-primary:focus-visible{outline:2px solid var(--text);outline-offset:3px}.screen .btn{border:1px solid var(--line-strong);height:52px;color:var(--text);font:600 18px/1 var(--font-body);white-space:nowrap;cursor:pointer;background:0 0;border-radius:2px;outline:none;justify-content:center;align-items:center;padding:0 22px;transition:border-color .12s,color .12s;display:inline-flex}.screen .btn:hover,.screen .btn.focus,.screen .btn:focus-visible{border-color:var(--accent);color:var(--accent)}.screen .btn.small{height:48px;padding:0 18px;font-size:16px}.stack .btn{width:100%}.foot{border-top:1px solid var(--line);font:600 12px/1.3 var(--font-body);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);justify-content:space-between;gap:16px;padding-top:12px;display:flex}.seg{border:1px solid var(--line);border-radius:2px;flex:none;max-width:100%;display:inline-flex}.seg button{border:0;border-right:1px solid var(--line);min-width:84px;height:48px;color:var(--text);font:600 15px/1 var(--font-body);cursor:pointer;background:0 0;flex:auto;padding:0 16px;transition:background .12s,color .12s}.seg button:last-child{border-right:0}.seg button:hover{color:var(--accent)}.seg button.on{background:var(--accent);color:var(--accent-ink)}.seg.focus,.seg:focus-within{outline:2px solid var(--text);outline-offset:3px}.range{align-items:center;gap:16px;display:flex}.range input[type=range]{appearance:none;--p:0%;cursor:pointer;background:0 0;outline:none;width:clamp(160px,22vw,300px);height:44px;margin:0}.range input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--accent) var(--p), var(--line) var(--p));height:4px}.range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);border:0;border-radius:0;width:14px;height:14px;margin-top:-5px}.range input[type=range]::-moz-range-track{background:var(--line);border:0;height:4px}.range input[type=range]::-moz-range-progress{background:var(--accent);height:4px}.range input[type=range]::-moz-range-thumb{background:var(--accent);border:0;border-radius:0;width:14px;height:14px}.range input[type=range].focus,.range input[type=range]:focus-visible{outline:2px solid var(--text);outline-offset:3px}.range .val{min-width:3.2em;font:600 16px/1 var(--font-body);text-align:right;font-variant-numeric:tabular-nums}.ctable{grid-template-columns:minmax(0,1.25fr) auto minmax(0,1fr) minmax(0,1fr);width:100%;font-size:16px;display:grid}.ct-row,.ct-head{display:contents}.ctable>div>span{border-bottom:1px solid var(--line);align-items:center;gap:6px;min-width:0;min-height:52px;padding:8px 10px;display:flex}.ctable>.ct-head>span{min-height:0;font:600 11px/1.2 var(--font-body);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);padding:0 10px 8px}.ct-row.always span{color:var(--muted)}.ct-action{font-weight:600}.ct-keys{flex-wrap:wrap}.ct-pad,.ct-touch{color:var(--muted);font-size:15px}.ctable.readonly>div>span{min-height:44px;padding:6px 8px;font-size:15px}.keycell{border:1px solid var(--line-strong);background:var(--panel-2);min-width:64px;height:40px;color:var(--text);font:600 15px/1 var(--font-body);white-space:nowrap;cursor:pointer;border-radius:2px;outline:none;padding:0 12px;transition:border-color .12s,color .12s}.keycell.empty{color:var(--muted);border-style:dashed}.keycell:hover,.keycell.focus,.keycell:focus-visible{border-color:var(--accent);color:var(--accent)}.keycell.listening{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);animation:1s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.6}}.ct-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:12px;display:flex}.ct-hint{min-height:1.4em;color:var(--accent);font-size:15px;font-weight:600}.clamp{-webkit-line-clamp:2;cursor:pointer;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.clamp:hover,.clamp.open{-webkit-line-clamp:none}#loading{z-index:50;padding:calc(var(--sa-t) + var(--gutter-y)) calc(var(--sa-r) + var(--gutter)) calc(var(--sa-b) + 120px) calc(var(--sa-l) + var(--gutter));background:var(--bg);visibility:visible;opacity:1;flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;transition:opacity .4s,visibility;display:flex;position:fixed;inset:0}#loading.hidden{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .4s,visibility 0s linear .4s}#loading .loading-text{font:italic 800 clamp(48px, 9vw, 120px)/.9 var(--font-body);text-transform:uppercase;letter-spacing:-.03em}#loading .loading-text small{text-transform:none;letter-spacing:0;color:var(--muted);white-space:pre-wrap;margin-top:12px;font:400 15px/1.4 ui-monospace,Consolas,monospace;display:block}#loading .bar{background:var(--line);width:min(560px,100%);height:4px;overflow:hidden}#loading .bar i{background:var(--accent);width:0;height:100%;transition:width .2s;display:block}#loading .sub{color:var(--muted);font-size:15px}#loading .tip{left:calc(var(--sa-l) + var(--gutter));right:calc(var(--sa-r) + var(--gutter));bottom:calc(var(--sa-b) + var(--gutter-y));border-top:1px solid var(--line);max-width:720px;color:var(--text);padding-top:14px;font-size:16px;line-height:1.5;position:absolute}#loading .tip b{font:600 12px/1.3 var(--font-body);text-transform:uppercase;letter-spacing:.18em;color:var(--accent);margin-bottom:6px;display:block}#loading .tip.swap{animation:.4s ease-out tipin}@keyframes tipin{0%{opacity:0;transform:translateY(6px)}}.screen{padding:calc(var(--sa-t) + var(--gutter-y)) calc(var(--sa-r) + var(--gutter)) calc(var(--sa-b) + var(--gutter-y)) calc(var(--sa-l) + var(--gutter));opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,visibility 0s linear .3s;position:absolute;inset:0}.screen.visible{opacity:1;visibility:visible;transition:opacity .3s}.screen.visible .clickable,.screen.visible button,.screen.visible .scroll,.screen.visible select,.screen.visible input,.screen.visible .seg,.screen.visible .range{pointer-events:auto}.top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.top .eyebrow{margin-bottom:14px}.top-right{align-items:center;gap:12px;display:flex}#title{z-index:20;cursor:pointer;grid-template-rows:auto minmax(0,1fr) auto;gap:clamp(16px,4vh,40px);display:grid}#title.visible{pointer-events:auto}#title:before{content:"";background:linear-gradient(90deg,#0a0a0bf0 0%,#0a0a0b99 55%,#0a0a0b59 100%);position:absolute;inset:0}#title>*{position:relative}#title .body{flex-direction:column;align-items:flex-start;gap:24px;min-height:0;margin:-6px;padding:6px;scroll-padding:6px;display:flex}#title .stack .sub{max-width:40ch}.controls-help{width:100%;max-width:640px;padding:18px 20px 16px}.help-grid{grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px 16px;margin-top:12px;display:grid}.help-grid .hk{justify-content:flex-end;gap:4px;display:flex}.help-grid .hl{white-space:nowrap;padding-right:12px;font-size:16px;font-weight:500}.help-foot{border-top:1px solid var(--line);color:var(--muted);margin-top:14px;padding-top:12px;font-size:15px}#settings,#pause,#results{z-index:30;justify-content:center;align-items:center;display:flex}#settings:before,#pause:before,#results:before{content:"";background:#060607b8;position:absolute;inset:0}#settings.visible:before,#pause.visible:before,#results.visible:before{pointer-events:auto}.dialog{border-color:var(--line-strong);flex-direction:column;gap:18px;width:min(820px,100%);max-height:100%;padding:clamp(20px,3vw,36px);display:flex;position:relative}.dialog.narrow{width:min(560px,100%)}.dialog.results{width:min(760px,100%)}.dialog-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.dialog .stack{max-width:none}.dialog-foot{padding-top:6px;display:flex}.sec{flex-direction:column;gap:12px;display:flex}.sec .label{margin-top:6px}.sdesc{color:var(--muted);margin:0;font-size:15px;line-height:1.45;display:block}.sdesc b{color:var(--text);font-weight:600}.sdesc kbd{min-width:1.6em;height:26px;padding:0 6px}.srow{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 24px;padding:4px 0;display:grid}.slabel{font-size:18px;font-weight:600;line-height:1.3}.slabel .sdesc{max-width:46em;margin-top:4px;font-weight:400}.sec.kb,.sec.tp,.sec .sdesc.kb,.sec .sdesc.tp{display:none}body:not(.touch) .sec.kb,body.touch .sec.tp{display:flex}body:not(.touch) .sec .sdesc.kb,body.touch .sec .sdesc.tp{display:block}#pause .ctable{grid-template-columns:minmax(0,1.2fr) auto minmax(0,1fr)}#pause .ctable .ct-touch{display:none}#results .table{flex-direction:column;width:100%;display:flex}#results .table .row,#results .table .head{border-bottom:1px solid var(--line);grid-template-columns:2.6em 1.6em minmax(0,1fr) 6.2em 6.2em;align-items:center;gap:12px;padding:12px 14px;font-size:18px;display:grid}#results .table .head{font:600 11px/1.2 var(--font-body);text-transform:uppercase;letter-spacing:.18em;color:var(--muted);padding:0 14px 10px}#results .table .row{opacity:0;border-left:2px solid #0000;animation:.35s forwards slidein;transform:translate(-10px)}#results .table .row .rank{font:600 15px/1 var(--font-body);letter-spacing:.08em;color:var(--muted)}#results .table .row .emoji{font-size:20px;line-height:1}#results .table .row .who{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}#results .time,#results .table .head span:nth-child(n+4){text-align:right;font-variant-numeric:tabular-nums;font-weight:600}#results .time{color:var(--muted);font-size:17px}#results .time.racing{font-size:15px;font-weight:500;animation:1.2s ease-in-out infinite pulse}#results .table .row.me{border-left-color:var(--accent);background:var(--panel-2)}#results .table .row.me .who,#results .table .row.me .rank{color:var(--accent)}@keyframes slidein{to{opacity:1;transform:none}}body.touch .controls-help.kb{display:none}body.touch .ctable{grid-template-columns:minmax(0,1.2fr) auto minmax(0,1fr)}body.touch .ctable .ct-pad{display:none}@media (prefers-reduced-motion:reduce){.screen,.fade,#loading,#loading .tip.swap,#results .table .row,.keycell.listening,#results .time.racing{opacity:1;transition:none;animation:none;transform:none}.screen:not(.visible),.fade:not(.on){opacity:0}}@media (max-width:820px){.srow{grid-template-columns:minmax(0,1fr)}.srow>.seg,.srow>.range{justify-self:start}body:not(.touch) .ctable{grid-template-columns:minmax(0,1.2fr) auto minmax(0,1fr)}body:not(.touch) .ctable .ct-touch{display:none}.help-grid{grid-template-columns:auto minmax(0,1fr)}.help-grid .hl{padding-right:0}}@media (max-width:560px){.ctable,body:not(.touch) .ctable,body.touch .ctable,#pause .ctable{grid-template-columns:minmax(0,1fr) auto}.ctable .ct-pad,.ctable .ct-touch{display:none!important}body.touch .ctable .ct-keys{display:none}body.touch .ctable .ct-touch{display:flex!important}.range input[type=range]{width:clamp(120px,40vw,220px)}.row-buttons .btn{flex:auto}#results .table .row,#results .table .head{grid-template-columns:2.2em 1.4em minmax(0,1fr) 5.4em 5.4em;gap:8px;padding-left:10px;padding-right:10px}}@media (max-width:480px){#results .table .row,#results .table .head{grid-template-columns:32px 24px minmax(0,1fr) 80px}#results .table .row{font-size:16px}#results .table .row>:nth-child(5),#results .table .head>:nth-child(5){display:none}}@media (max-width:900px){.top{flex-wrap:wrap}}@media (max-height:820px){.h1{font-size:clamp(40px,6.5vw,72px)}.h1.card-title{font-size:clamp(36px,5vw,60px)}.h1.wordmark{font-size:clamp(40px,6vw,84px)}.dialog{gap:14px}}@media (max-height:520px){.screen{padding-top:calc(var(--sa-t) + 8px);padding-bottom:calc(var(--sa-b) + 8px)}.h1{font-size:clamp(32px,6vh,48px)}.h1.card-title{font-size:clamp(30px,6vh,44px)}.h1.wordmark{font-size:clamp(32px,7vh,52px)}.tagline{margin-top:6px}.top .eyebrow{margin-bottom:6px}#title{gap:12px}#title .controls-help{display:none}.screen .btn-primary{height:52px;font-size:20px}.screen .btn{height:48px;font-size:16px}.stack{gap:8px}.dialog{gap:10px;padding:14px 18px}.ctable>div>span{min-height:40px;padding:4px 8px}#results .table .row,#results .table .head{padding:6px 12px}}:root{--tb:clamp(56px, min(19vh, 12vw), 96px)}#hud,#touch,#fps{--hu:clamp(.7px, min(.058vw, .1vh), 2.2px);--sa-t:env(safe-area-inset-top,0px);--sa-r:env(safe-area-inset-right,0px);--sa-b:env(safe-area-inset-bottom,0px);--sa-l:env(safe-area-inset-left,0px);--h-bg:var(--bg,#0b0b0c);--h-panel:var(--panel,#111113);--h-panel-2:var(--panel-2,#17171a);--h-line:var(--line,#26262b);--h-line-strong:var(--line-strong,#3a3a40);--h-text:var(--text,#f2f2f2);--h-muted:var(--muted,#9b9ba3);--h-accent:var(--accent,#d6ff1f);--h-ink:var(--accent-ink,#0b0b0c);--h-danger:var(--danger,#ff4d4d);--h-ok:var(--ok,#7cfc9a);--h-accent-2:var(--accent-2,#5ad1ff);--h-plate:#111113e0;--h-display:var(--font-display,"Barlow Condensed", "Arial Narrow", Impact, sans-serif);--h-body:var(--font-body,"Barlow", "Segoe UI", Arial, sans-serif)}#hud,#hud *,#touch,#touch *,#fps{box-sizing:border-box}#fps{left:50%;top:calc(var(--sa-t) + 6px);text-align:center;max-width:clamp(240px,100vw - 460px,720px);color:var(--h-text);background:var(--h-plate);border:1px solid var(--h-line);pointer-events:none;z-index:60;border-radius:2px;padding:3px 9px;font:500 15px/1.3 ui-monospace,Consolas,monospace;display:none;position:fixed;transform:translate(-50%)}#fps.visible{display:block}#hud{opacity:0;visibility:hidden;font-family:var(--h-body);color:var(--h-text);transition:opacity .3s,visibility 0s linear .3s;position:absolute;inset:0}#hud.visible{opacity:1;visibility:visible;transition:opacity .3s}#hud .position,#hud .standings,#hud .lapbox,#hud .speed,#hud .minimap,#hud .ability,#hud .ability .label,#hud .message,#hud .wrongway,#hud .lights,#hud .hint,#hud .rotate{background:var(--h-plate);border:1px solid var(--h-line);border-radius:2px}#hud .position{left:calc(var(--sa-l) + var(--hu) * 20);top:calc(var(--sa-t) + var(--hu) * 16);padding:calc(var(--hu) * 4) calc(var(--hu) * 14) calc(var(--hu) * 8) calc(var(--hu) * 12);line-height:1;font-family:var(--h-display);align-items:baseline;gap:.1em;font-style:italic;display:flex;position:absolute}#hud .position .big{font-weight:800;font-size:max(56px, calc(var(--hu) * 64));letter-spacing:-.02em;color:var(--h-accent)}#hud .position .of{font-weight:700;font-size:max(20px, calc(var(--hu) * 24));color:var(--h-muted)}#hud .standings{left:calc(var(--sa-l) + var(--hu) * 20);top:calc(var(--sa-t) + max(96px, calc(var(--hu) * 104)));letter-spacing:0;padding:calc(var(--hu) * 2) calc(var(--hu) * 12);min-width:11em;font-size:max(16px, calc(var(--hu) * 16));flex-direction:column;gap:0;font-weight:600;line-height:1.2;display:flex;position:absolute}#hud .standings div{white-space:nowrap;border-top:1px solid var(--h-line);align-items:center;gap:.5em;padding:.3em 0;display:flex}#hud .standings div:first-child{border-top:0}#hud .standings .idx{letter-spacing:.06em;color:var(--h-muted);font-variant-numeric:tabular-nums;min-width:1.6em;font-size:12px;font-weight:600}#hud .standings .dot{border:0;border-radius:50%;flex:none;width:.6em;height:.6em}#hud .standings .name{text-overflow:ellipsis;overflow:hidden}#hud .standings .done{color:var(--h-muted);margin-left:auto;padding-left:.5em;font-size:.85em}#hud .standings .me,#hud .standings .me .idx,#hud .standings .me .done{color:var(--h-accent)}#hud .lapbox{right:calc(var(--sa-r) + var(--hu) * 20);top:calc(var(--sa-t) + var(--hu) * 16);text-align:right;padding:calc(var(--hu) * 8) calc(var(--hu) * 14) calc(var(--hu) * 10);line-height:1.05;font-family:var(--h-display);font-variant-numeric:tabular-nums;font-weight:700;position:absolute}#hud .lap{font-size:max(22px, calc(var(--hu) * 26));letter-spacing:.02em;color:var(--h-muted)}#hud .lap b{color:var(--h-accent);font-size:1.3em;font-style:italic;font-weight:800}#hud .timer{font-size:max(30px, calc(var(--hu) * 36));color:var(--h-text);margin-top:.04em}#hud .bestlap{font-size:max(15px, calc(var(--hu) * 16));letter-spacing:.04em;color:var(--h-muted);transform-origin:100%;margin-top:.35em}#hud .bestlap span{color:var(--h-text)}#hud .bestlap.new{animation:.6s cubic-bezier(.2,1.6,.4,1) hud-bestpop}@keyframes hud-bestpop{40%{transform:scale(1.2)}}#hud .minimap{left:calc(var(--sa-l) + var(--hu) * 20);bottom:calc(var(--sa-b) + var(--hu) * 20);width:max(150px, calc(var(--hu) * 210));height:max(150px, calc(var(--hu) * 210));padding:calc(var(--hu) * 10);position:absolute}#hud .minimap svg{width:100%;height:100%;display:block;overflow:visible}#hud .minimap .road{fill:none;stroke:var(--h-line-strong);stroke-width:8px;stroke-linejoin:round;stroke-linecap:round}#hud .minimap .start{fill:var(--h-text)}#hud .minimap .rc{stroke:var(--h-bg);stroke-width:1px}#hud .minimap .rc.me{fill:var(--h-accent);stroke-width:1.2px}#hud .ability{right:calc(var(--sa-r) + var(--hu) * 24);bottom:calc(var(--sa-b) + var(--hu) * 56);width:max(72px, calc(var(--hu) * 72));height:max(72px, calc(var(--hu) * 72));font-size:max(30px, calc(var(--hu) * 32));pointer-events:auto;cursor:pointer;justify-content:center;align-items:center;transition:border-color .2s,transform .15s;display:flex;position:absolute}#hud .ability.defense{right:calc(var(--sa-r) + var(--hu) * 36 + max(72px, calc(var(--hu) * 72)))}#hud .ability svg{width:calc(100% - 6px);height:calc(100% - 6px);position:absolute;inset:3px;transform:rotate(-90deg)}#hud .ability circle{fill:none;stroke-width:6px}#hud .ability circle.track{stroke:var(--h-line-strong)}#hud .ability circle.ring{stroke:var(--h-accent);stroke-linecap:butt;transition:stroke-dashoffset .1s linear}#hud .ability.defense circle.ring{stroke:var(--h-accent-2)}#hud .ability .icon{opacity:.35;line-height:1;transition:opacity .2s}#hud .ability.ready{border-color:var(--h-accent)}#hud .ability.defense.ready{border-color:var(--h-accent-2)}#hud .ability.ready .icon{opacity:1}#hud .ability.pop{animation:.35s cubic-bezier(.2,1.6,.4,1) hud-abilitypop}@keyframes hud-abilitypop{50%{transform:scale(1.12)}}#hud .ability .label{white-space:nowrap;font-family:var(--h-body);text-transform:uppercase;letter-spacing:.08em;color:var(--h-text);margin-top:6px;padding:.25em .6em;font-size:15px;font-weight:600;line-height:1.2;position:absolute;top:100%;right:0}#hud .ability.defense .label{margin:0 8px 0 0;top:50%;right:100%;transform:translateY(-50%)}#hud .ability .label:empty{display:none}#hud .ability .key{white-space:nowrap;font-family:var(--h-body);color:var(--h-text);background:var(--h-panel-2);border:1px solid var(--h-line-strong);border-radius:2px;margin-bottom:6px;padding:2px 8px;font-size:15px;font-weight:600;line-height:1.2;position:absolute;top:auto;bottom:100%;left:50%;transform:translate(-50%)}#hud .speed{right:calc(var(--sa-r) + var(--hu) * 24);bottom:calc(var(--sa-b) + var(--hu) * 56 + max(72px, calc(var(--hu) * 72)) + 40px);font-family:var(--h-display);font-weight:700;font-size:max(32px, calc(var(--hu) * 40));font-variant-numeric:tabular-nums;align-items:baseline;gap:.25em;padding:.16em .45em .2em;line-height:1;display:flex;position:absolute}#hud .speed span{text-align:right;min-width:1.8em}#hud .speed small{font-family:var(--h-body);letter-spacing:.08em;text-transform:uppercase;color:var(--h-muted);font-size:15px;font-weight:500}#hud .center{text-align:center;position:absolute;top:30%;left:0;right:0;transform:translateY(-50%)}#hud .message{font-family:var(--h-display);text-transform:uppercase;font-style:italic;font-weight:800;font-size:max(56px, calc(var(--hu) * 68));letter-spacing:-.01em;color:var(--h-accent);white-space:nowrap;opacity:0;padding:.12em .4em .16em;line-height:1;transition:opacity .2s,transform .25s cubic-bezier(.2,1.4,.4,1);display:inline-block;transform:translateY(12px)scale(.94)}#hud .message.show{opacity:1;transform:none}#hud .message.red{color:var(--h-danger)}#hud .lights{gap:calc(var(--hu) * 14);padding:calc(var(--hu) * 12) calc(var(--hu) * 16);opacity:0;visibility:hidden;transition:opacity .2s,transform .3s cubic-bezier(.2,1.5,.4,1),visibility 0s linear .3s;display:flex;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)scale(.8)}#hud .lights.show{opacity:1;visibility:visible;transition:opacity .2s,transform .3s cubic-bezier(.2,1.5,.4,1);transform:translate(-50%,-50%)scale(1)}#hud .lights i{width:max(44px, calc(var(--hu) * 60));height:max(44px, calc(var(--hu) * 60));background:var(--h-panel-2);border:1px solid var(--h-line-strong);border-radius:50%;transition:background .1s,border-color .1s}#hud .lights.step0 i:first-child,#hud .lights.step1 i:nth-child(-n+2),#hud .lights.step2 i{background:var(--h-danger);border-color:var(--h-danger)}#hud .lights.step3 i{background:var(--h-ok);border-color:var(--h-ok)}#hud .wrongway{font-family:var(--h-display);font-style:italic;font-weight:800;font-size:max(32px, calc(var(--hu) * 44));color:var(--h-danger);white-space:nowrap;opacity:0;visibility:hidden;padding:.15em .5em .2em;line-height:1;position:absolute;top:54%;left:50%;transform:translate(-50%,-50%)}#hud .wrongway.show{opacity:1;visibility:visible;animation:.5s steps(2,end) infinite hud-blink}@keyframes hud-blink{50%{opacity:.2}}#hud .drift{left:50%;bottom:calc(var(--sa-b) + max(64px, calc(var(--hu) * 60)));width:calc(var(--hu) * 220);background:var(--h-plate);border:1px solid var(--h-line);opacity:0;visibility:hidden;border-radius:2px;height:8px;transition:opacity .15s,visibility 0s linear .15s,border-color .1s;position:absolute;transform:translate(-50%)}#hud .drift.show{opacity:1;visibility:visible;transition:opacity .15s,border-color .1s}#hud .drift:after{content:"";background:var(--h-muted);width:1px;position:absolute;top:-5px;bottom:-5px;left:45%}#hud .drift i{background:var(--h-muted);width:0;height:100%;transition:background .1s;display:block}#hud .drift.blue i,#hud .drift.orange i{background:var(--h-accent)}#hud .drift.orange{border-color:var(--h-accent);animation:.3s ease-in-out infinite alternate hud-driftpulse}@keyframes hud-driftpulse{to{transform:translate(-50%)scaleY(1.5)}}#hud .hint{left:50%;bottom:calc(var(--sa-b) + var(--hu) * 14);font-family:var(--h-body);color:var(--h-muted);white-space:nowrap;padding:.4em .9em;font-size:15px;font-weight:500;line-height:1.3;position:absolute;transform:translate(-50%)}#hud .hint:empty{display:none}#hud .hint b{color:var(--h-text);font-weight:600}#hud .hint .sep{color:var(--h-line-strong);margin:0 .5em}#hud .flash{opacity:0;background:#fff;position:absolute;inset:0}#hud .rotate{font-family:var(--h-body);white-space:nowrap;padding:10px 18px;font-size:17px;font-weight:600;display:none;position:absolute;top:62%;left:50%;transform:translate(-50%,-50%)}#hud .position .big,#hud .ability,#hud .ability.ready,#hud .ability .icon,#hud .minimap svg,#hud .message,#hud .message.red,#hud .wrongway,#hud .lights,#hud .lights i,#hud .lights.step0 i:first-child,#hud .lights.step1 i:nth-child(-n+2),#hud .lights.step2 i,#hud .lights.step3 i,#hud .drift.blue i,#hud .drift.orange i,#hud .hint,#hud .rotate,#touch .btn,#touch .btn.down{box-shadow:none;text-shadow:none;-webkit-text-stroke:0;filter:none;-webkit-backdrop-filter:none}#touch{display:none;position:absolute;inset:0}body.touch #touch.visible{display:block}#touch .btn{width:var(--tb);height:var(--tb);background:var(--h-plate);border:1px solid var(--h-line-strong);color:var(--h-text);font-family:var(--h-display);font-weight:700;font-size:calc(var(--tb) * .36);pointer-events:auto;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;border-radius:2px;flex-direction:column;justify-content:center;align-items:center;gap:3px;line-height:1;transition:border-color 80ms,color 80ms,background 80ms;display:flex;position:absolute}#touch .btn.down{border-color:var(--h-accent);color:var(--h-accent);background:var(--h-panel-2);transform:none}#touch .btn span{font-family:var(--h-body);letter-spacing:.12em;text-transform:uppercase;font-size:15px;font-weight:700}#touch .btn small{font-family:var(--h-body);letter-spacing:0;opacity:1;color:var(--h-muted);font-size:15px;font-weight:500}#touch .btn.down small{color:var(--h-accent)}#touch .left{left:calc(var(--sa-l) + 14px);bottom:calc(var(--sa-b) + 14px)}#touch .right{left:calc(var(--sa-l) + 26px + var(--tb));bottom:calc(var(--sa-b) + 14px)}#touch .brake{right:calc(var(--sa-r) + 26px + var(--tb));bottom:calc(var(--sa-b) + 14px);width:max(calc(var(--tb) * 1.6), 118px)}#touch .ability,#touch .defense{right:calc(var(--sa-r) + 14px);bottom:calc(var(--sa-b) + 14px);background:0 0;border-color:#0000}#touch .defense{bottom:calc(var(--sa-b) + 14px + var(--tb) + 42px)}#touch .ability.down{border-color:var(--h-accent);background:#d6ff1f2e}#touch .defense.down{border-color:var(--h-accent-2);background:#5ad1ff2e}body.touch #hud .ability{right:calc(var(--sa-r) + 14px);bottom:calc(var(--sa-b) + 14px);width:var(--tb);height:var(--tb);font-size:calc(var(--tb) * .42);pointer-events:none}body.touch #hud .ability.defense{bottom:calc(var(--sa-b) + 14px + var(--tb) + 42px)}body.touch #hud .ability .label,body.touch #hud .ability.defense .label{margin:0 0 6px;font-size:15px;inset:auto 0 100% auto;transform:none}body.touch #hud .ability .key,body.touch #hud .hint,body.touch #hud .standings{display:none}body.touch #hud .minimap{left:calc(var(--sa-l) + 14px);bottom:calc(var(--sa-b) + var(--tb) + 30px);width:clamp(104px,min(32vh,24vw),160px);height:clamp(104px,min(32vh,24vw),160px);padding:8px}body.touch #hud .speed{right:calc(var(--sa-r) + 26px + var(--tb));bottom:calc(var(--sa-b) + 14px + var(--tb) + 42px);font-size:clamp(24px,6vh,32px)}body.touch #hud .drift{bottom:calc(var(--sa-b) + var(--tb) + 26px);width:clamp(120px,26vw,210px)}body.touch #hud .position{left:calc(var(--sa-l) + 10px);top:calc(var(--sa-t) + 8px)}body.touch #hud .position .big{font-size:clamp(40px,13vh,64px)}body.touch #hud .position .of{font-size:clamp(16px,5vh,24px)}body.touch #hud .lapbox{right:calc(var(--sa-r) + 10px);top:calc(var(--sa-t) + 8px)}body.touch #hud .lap{font-size:clamp(16px,5vh,24px)}body.touch #hud .timer{font-size:clamp(20px,6.5vh,32px)}body.touch #hud .bestlap{font-size:15px}body.touch #hud .message{font-size:clamp(40px,12vh,68px)}body.touch #hud .lights i{width:clamp(36px,12vh,60px);height:clamp(36px,12vh,60px)}@media (orientation:portrait){body.touch #hud .rotate{display:block}}#garage{grid-template-columns:minmax(0,1fr) clamp(300px,30vw,440px);padding:0;display:grid}#garage.visible{pointer-events:auto}#garage [hidden]{display:none!important}#garage .g-page{min-height:0;padding:calc(var(--sa-t) + var(--gutter-y)) clamp(16px, 2.2vw, 36px) calc(var(--sa-b) + 14px) calc(var(--sa-l) + var(--gutter));grid-template-rows:auto minmax(0,1fr) auto auto;gap:clamp(10px,1.6vh,18px);display:grid;position:relative}#garage .g-page:before{content:"";pointer-events:none;background:linear-gradient(#0a0a0be6,#0a0a0b00);height:200px;position:absolute;top:0;left:0;right:0}#garage .g-page:after{content:"";pointer-events:none;background:linear-gradient(#0a0a0b00,#0a0a0beb 70%);height:300px;position:absolute;bottom:0;left:0;right:0}#garage .g-page>*{z-index:1;position:relative}#garage .g-eyebrow{font:600 12px/1.3 var(--font-body);text-transform:uppercase;letter-spacing:.2em;color:var(--accent);align-items:center;gap:8px;display:inline-flex}#garage .g-eyebrow.warn{color:#ffb15a}#garage .g-eyebrow .ico{font-size:14px}#garage .g-label{font:600 11px/1.3 var(--font-body);text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}#garage .g-sub{color:var(--muted);font-size:15px;line-height:1.45}#garage .g-h2{font:italic 800 clamp(34px, 3.6vw, 56px)/.92 var(--font-display);text-transform:uppercase;letter-spacing:-.01em}#garage .g-h2 em,#garage .g-wm-text em{font-style:inherit;color:var(--accent)}#garage .g-btn{border:1px solid var(--line-strong);height:44px;color:var(--text);font:600 13px/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;cursor:pointer;background:#111113b3;border-radius:2px;justify-content:center;align-items:center;gap:8px;padding:0 16px;transition:border-color .12s,color .12s,background .12s;display:inline-flex}#garage .g-btn .ico{font-size:16px}#garage .g-btn:hover{border-color:var(--accent);color:var(--accent)}#garage .g-btn.small{height:38px;padding:0 12px;font-size:12px}#garage .g-btn.icon{width:44px;padding:0}#garage button:focus-visible,#garage [tabindex="0"]:focus-visible{outline:2px solid var(--text);outline-offset:3px}#garage .g-rule{background:var(--accent);width:56px;height:3px}#garage .ico{flex:none}#garage .g-head{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:16px;display:grid}#garage .g-brand{flex-direction:column;gap:4px;min-width:0;display:flex}#garage .g-wordmark{align-items:center;height:40px;display:flex}#garage .g-wm-text{font:italic 800 clamp(26px, 2.4vw, 38px)/1 var(--font-body);letter-spacing:-.02em;text-transform:uppercase;white-space:nowrap}#garage .g-wm-img{width:auto;height:40px;display:none}#garage .g-wordmark.has-image .g-wm-img{display:block}#garage .g-wordmark.has-image .g-wm-text{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}#garage .g-tag{font:600 11px/1.3 var(--font-body);letter-spacing:.34em;text-transform:uppercase;color:var(--muted);white-space:nowrap}#garage .g-nav{align-items:flex-start;gap:6px;display:flex}#garage .g-navbtn{height:40px;color:var(--muted);font:700 14px/1 var(--font-body);letter-spacing:.24em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0 12px;transition:color .12s;display:inline-flex;position:relative}#garage .g-navbtn.on{color:var(--text);cursor:default}#garage .g-navbtn.on:after{content:"";background:var(--accent);height:3px;position:absolute;bottom:0;left:12px;right:12px}#garage .g-navbtn:hover{color:var(--text)}#garage .g-navbtn .ico{font-size:16px}#garage .g-right{flex-direction:column;align-items:flex-end;gap:8px;display:flex}#garage .g-wallet-row{align-items:center;gap:14px;display:flex}#garage .g-sol{width:34px;height:30px;display:block}#garage .g-wallet{border-color:var(--text);background:0 0;height:42px;padding:0 18px}#garage .g-stagechip{font:600 11px/1 var(--font-body);letter-spacing:.34em;text-transform:uppercase;color:var(--muted);padding-right:2px}#garage .g-garage{grid-template-columns:minmax(200px,32%) minmax(0,1fr);min-height:0;display:grid}#garage .g-rider{flex-direction:column;align-self:center;gap:14px;min-width:0;padding-right:8px;display:flex}#garage .g-rider-index{color:var(--accent)}#garage .g-name{font:italic 800 clamp(48px, 7vw, 124px)/.86 var(--font-display);text-transform:uppercase;letter-spacing:-.015em;text-shadow:0 2px 24px #00000080}#garage .g-blurb{max-width:26ch;font:500 clamp(17px, 1.25vw, 21px)/1.35 var(--font-body);color:#d8d8dc}#garage .g-abil{flex-wrap:wrap;gap:8px 18px;display:flex}#garage .g-ab{font:600 14px/1 var(--font-body);color:var(--muted);align-items:center;gap:8px;display:inline-flex}#garage .g-ab i{font:700 10px/1 var(--font-body);letter-spacing:.2em;border:1px solid var(--line-strong);color:var(--text);border-radius:2px;padding:4px 6px;font-style:normal}#garage .g-ab.attack i{border-color:var(--accent);color:var(--accent)}#garage .g-ab.defense i{color:#5ad1ff;border-color:#5ad1ff}#garage .swap{animation:.42s cubic-bezier(.2,.7,.2,1) both g-swap}@keyframes g-swap{0%{opacity:0;transform:translateY(10px)}}#garage .g-stage{touch-action:pan-y;cursor:grab;min-height:0;position:relative}#garage .g-stage.dragging{cursor:grabbing}#garage .g-stage-hint{font:600 11px/1 var(--font-body);letter-spacing:.24em;text-transform:uppercase;color:var(--dim);pointer-events:none;align-items:center;gap:8px;transition:opacity .3s;display:inline-flex;position:absolute;top:4px;right:0}#garage .g-stage.hinted .g-stage-hint,body.touch #garage .g-stage-hint{opacity:0}#garage .g-reset{position:absolute;bottom:8px;right:0}#garage .g-stage-state{background:var(--panel-a);border:1px solid var(--line);border-radius:2px;flex-direction:column;gap:10px;width:min(360px,100%);padding:16px 18px;display:flex;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}#garage .g-stage-state.error{border-color:var(--danger)}#garage .g-ss-title{font:italic 800 22px/1 var(--font-display);text-transform:uppercase}#garage .g-ss-bar{background:var(--line);height:4px;overflow:hidden}#garage .g-ss-bar i{background:var(--accent);width:0;height:100%;transition:width .2s;display:block}#garage .g-stage-state.error .g-ss-bar{display:none}#garage .g-ss-text{color:var(--muted);word-break:break-word;font-size:14px}#garage .g-stage-state .g-btn{align-self:flex-start}#garage .g-roster{flex-direction:column;gap:10px;min-width:0;display:flex}#garage .g-roster-head{justify-content:space-between;align-items:baseline;gap:16px;display:flex}#garage .g-roster-note{font-size:13px}#garage .g-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}#garage .g-card{border:1px solid var(--line-strong);background:var(--panel-2);min-width:0;color:var(--text);cursor:pointer;text-align:left;border-radius:2px;flex-direction:column;gap:0;padding:0;transition:border-color .12s,transform .12s;display:flex;position:relative;overflow:hidden}#garage .g-card:hover{border-color:#6a6a72}#garage .g-card.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}#garage .g-card .g-num{z-index:1;font:700 12px/1 var(--font-body);letter-spacing:.1em;color:var(--muted);text-shadow:0 1px 2px #000;position:absolute;top:8px;left:10px}#garage .g-card.selected .g-num{color:var(--accent)}#garage .g-thumb{aspect-ratio:5/3.6;background:radial-gradient(120% 90% at 50% 100%,#24242a,#131316 70%);width:100%;display:block;position:relative;overflow:hidden}#garage .g-thumb img{width:130%;height:auto;position:absolute;top:52%;left:50%;transform:translate(-50%,-50%)}#garage .g-thumb img.none{display:none}#garage .g-cname{font:700 15px/1.15 var(--font-body);color:var(--text);border-top:1px solid var(--line);overflow-wrap:anywhere;padding:10px 12px 11px}#garage .g-card.selected .g-cname{color:var(--accent)}#garage .g-cstate{z-index:1;font:600 10px/1 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);position:absolute;top:8px;right:8px}#garage .g-card.ready .g-cstate{display:none}#garage .g-card.missing{border-color:var(--danger)}#garage .g-card.missing .g-cstate{color:var(--danger)}#garage.locked .g-card{cursor:not-allowed;opacity:.6}#garage.locked .g-card.selected{opacity:1}#garage .g-foot{border-top:1px solid var(--line);font:600 11px/1.3 var(--font-body);text-transform:uppercase;letter-spacing:.26em;color:var(--muted);justify-content:space-between;gap:16px;padding-top:10px;display:flex}#garage .g-side{--side-pad:clamp(18px, 1.8vw, 28px);min-height:0;padding:calc(var(--sa-t) + var(--gutter-y)) calc(var(--sa-r) + var(--side-pad)) calc(var(--sa-b) + 16px) var(--side-pad);background:var(--panel);border-left:1px solid var(--line);flex-direction:column;gap:12px;display:flex}#garage .g-track{aspect-ratio:16/8.4;border:1px solid var(--line-strong);width:100%;color:var(--text);text-align:left;cursor:pointer;background:#121316;border-radius:2px;padding:0;transition:border-color .12s;display:block;position:relative;overflow:hidden}#garage .g-track:hover{border-color:var(--accent)}#garage .g-track-art{background:radial-gradient(90% 80% at 70% 30%,#262a33 0%,#15171b 55%,#0f1012 100%);position:absolute;inset:0}#garage .g-track-art:before{content:"";background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}#garage .g-track-art img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}#garage .g-track-art .track-outline{width:46%;height:84%;position:absolute;top:8%;right:6%}#garage .g-track-art img+.track-outline{width:28%;height:40%;top:6%;right:4%}#garage .g-track-text{flex-direction:column;gap:4px;display:flex;position:absolute;bottom:12px;left:14px;right:14px}#garage .g-track-name{font:italic 800 clamp(24px, 1.9vw, 32px)/.95 var(--font-display);text-transform:uppercase;text-shadow:0 2px 12px #0009}#garage .g-track-meta{font:600 11px/1.3 var(--font-body);letter-spacing:.2em;color:var(--muted)}#garage .g-track-cta,#garage .g-track-lock{border:1px solid var(--line-strong);font:600 10px/1 var(--font-body);letter-spacing:.2em;color:var(--muted);background:#0a0a0bb3;align-items:center;gap:6px;padding:6px 8px;display:inline-flex;position:absolute;top:10px;left:12px}#garage .g-track-lock{color:var(--accent);border-color:var(--accent);display:none}#garage.locked .g-track{cursor:not-allowed}#garage.locked .g-track-cta{display:none}#garage.locked .g-track-lock{display:inline-flex}#garage .g-entry{font:italic 800 clamp(44px, 3.8vw, 68px)/.9 var(--font-display);color:var(--accent);text-transform:uppercase;align-items:baseline;gap:10px;margin-top:-4px;display:flex}#garage .g-entry-unit{font-size:.72em}#garage .g-entry-note{margin-top:-6px}#garage .g-rows{flex-direction:column;margin-top:2px;display:flex}#garage .g-row{border-bottom:1px solid var(--line);font:italic 800 clamp(20px, 1.5vw, 26px)/1 var(--font-display);text-transform:uppercase;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;display:flex}#garage .g-row b{color:var(--accent);font-weight:inherit;font-variant-numeric:tabular-nums}#garage .g-rest{font:600 15px/1.3 var(--font-body);letter-spacing:.04em;color:var(--muted);margin-top:-2px}#garage .g-fine{border-top:1px solid var(--line);color:var(--muted);padding-top:10px;font-size:13px;line-height:1.5}#garage .g-cta{flex-direction:column;gap:10px;margin-top:auto;padding-top:6px;display:flex}#garage .g-find{background:var(--accent);width:100%;height:66px;color:var(--accent-ink);font:italic 800 clamp(24px, 1.9vw, 32px)/1 var(--font-display);text-transform:uppercase;letter-spacing:.01em;cursor:pointer;border:0;border-radius:2px;justify-content:space-between;align-items:center;gap:14px;padding:0 22px;transition:filter .12s;display:flex;position:relative}#garage .g-find .ico{font-size:28px}#garage .g-find:hover{filter:brightness(1.08)}#garage .g-find:active{filter:brightness(.94)}#garage .g-find-error{color:var(--danger);font-size:14px;line-height:1.4;display:none}#garage .g-find-error.show{display:block}#garage .g-soon{text-align:center;font:600 11px/1.3 var(--font-body);letter-spacing:.3em;text-transform:uppercase;color:var(--muted)}#garage .g-side-foot{border-top:1px solid var(--line);font:600 11px/1.3 var(--font-body);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}#garage .g-side-foot .ico{color:var(--accent)}#garage .g-modal{z-index:5;pointer-events:auto;background:#060607bd;place-items:center;padding:16px;display:grid;position:absolute;inset:0}#garage .g-modal[hidden]{display:none}#garage .g-dialog{background:var(--panel);border:1px solid var(--line-strong);border-radius:2px;flex-direction:column;gap:18px;width:min(680px,100%);max-height:100%;padding:clamp(20px,3vw,32px);display:flex;overflow:auto}#garage .g-dialog.wide{width:min(980px,100%)}#garage .g-dialog.narrow{width:min(560px,100%)}#garage .g-dialog-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}#garage .g-dialog-foot{flex-wrap:wrap;gap:12px;padding-top:6px;display:flex}#garage .g-dialog-foot .g-find{flex:260px;justify-content:center;height:60px}#garage .g-dialog-foot .g-btn{height:60px;padding:0 24px}#garage .g-notice{background:#ffb15a12;border:1px solid #ffb15a;border-left-width:4px;border-radius:2px;gap:12px;padding:14px 16px;font-size:15px;line-height:1.5;display:flex}#garage .g-tcards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}#garage .g-tcard{border:1px solid var(--line-strong);background:var(--panel-2);color:var(--text);text-align:left;cursor:pointer;border-radius:2px;flex-direction:column;padding:0;transition:border-color .12s;display:flex;position:relative;overflow:hidden}#garage .g-tcard:hover{border-color:var(--accent)}#garage .g-tcard.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}#garage .g-tcard.off{cursor:not-allowed}#garage .g-tcard.off .g-tcard-art,#garage .g-tcard.off .g-tcard-name{opacity:.55}#garage .g-tcard-art{aspect-ratio:16/8;background:radial-gradient(90% 80% at 70% 30%,#262a33 0%,#15171b 55%,#0f1012 100%);display:block;position:relative}#garage .g-tcard-art:before{content:"";background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}#garage .g-tcard-art img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}#garage .g-tcard-art .track-outline{width:46%;height:86%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#garage .g-tcard-art img+.track-outline{width:28%;height:40%;top:6%;left:auto;right:4%;transform:none}#garage .g-tcard-noart{font:600 11px/1 var(--font-body);letter-spacing:.2em;color:var(--dim);justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}#garage .g-tcard-body{border-top:1px solid var(--line);flex-direction:column;gap:6px;padding:14px 16px 16px;display:flex}#garage .g-tcard-name{font:italic 800 26px/1 var(--font-display);text-transform:uppercase}#garage .g-tcard-meta{font:600 11px/1.3 var(--font-body);letter-spacing:.2em;color:var(--muted)}#garage .g-tcard-blurb{color:var(--muted);font-size:15px;line-height:1.4}#garage .g-badge{font:600 10px/1 var(--font-body);letter-spacing:.2em;border:1px solid;border-radius:2px;align-self:flex-start;align-items:center;gap:6px;margin-top:4px;padding:5px 8px;display:inline-flex}#garage .g-badge.ok{color:var(--ok);border-color:#7cfc9a80}#garage .g-badge.off{color:var(--muted);border-color:var(--line-strong)}#garage .g-tcard-sel{background:var(--accent);color:var(--accent-ink);font:700 10px/1 var(--font-body);letter-spacing:.2em;align-items:center;gap:4px;padding:6px 8px;display:inline-flex;position:absolute;top:10px;right:10px}#garage .g-lobby{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;display:grid}#garage .g-lobby-req{flex-direction:column;gap:12px;display:flex}#garage .g-kv{border-bottom:1px solid var(--line);flex-direction:column;gap:3px;padding-bottom:10px;display:flex}#garage .g-kv b{font:italic 800 22px/1 var(--font-display);text-transform:uppercase}#garage .g-kv small{color:var(--muted);font-size:13px}#garage .g-seats{border:1px solid var(--line);flex-direction:column;display:flex}#garage .g-seat{border-bottom:1px solid var(--line);grid-template-columns:34px 110px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;font-size:15px;display:grid}#garage .g-seat:last-child{border-bottom:0}#garage .g-seat-n{font:600 12px/1 var(--font-body);letter-spacing:.1em;color:var(--dim)}#garage .g-seat-kind{font:600 10px/1 var(--font-body);letter-spacing:.2em;color:var(--muted);align-items:center;gap:6px;display:inline-flex}#garage .g-seat.you{background:#ff5a1f14}#garage .g-seat.you .g-seat-kind{color:var(--accent)}#garage .g-seat-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}#garage .g-status{border:1px solid var(--line-strong);font:600 12px/1 var(--font-body);letter-spacing:.2em;color:var(--muted);border-radius:2px;align-self:flex-start;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}#garage .g-status.connected{color:var(--ok);border-color:#7cfc9a80}#garage code{color:var(--text);font:500 14px ui-monospace,Consolas,monospace}#garage .g-dialog p{margin:0}#garage.reduced .swap,#garage.reduced .g-btn,#garage.reduced .g-card,#garage.reduced .g-track,#garage.reduced .g-tcard,#garage.reduced .g-find{transition:none;animation:none}@media (prefers-reduced-motion:reduce){#garage .swap{animation:none}#garage *{transition-duration:0s!important}}@media (max-width:1300px){#garage .g-navbtn{letter-spacing:.16em;padding:0 8px}#garage .g-tag{letter-spacing:.24em}}@media (max-width:1100px) and (min-width:901px){#garage .g-head{grid-template-columns:minmax(0,1fr) auto}#garage .g-nav{grid-area:2/1/auto/-1;justify-content:flex-start;margin-left:-12px}#garage .g-cname{padding:8px 10px;font-size:14px}#garage .g-roster-note{display:none}}@media (max-height:760px) and (min-width:901px){#garage .g-name{font-size:clamp(40px,5.6vw,84px)}#garage .g-thumb{aspect-ratio:5/2.6}#garage .g-side{gap:8px}#garage .g-fine{display:none}#garage .g-row{padding:6px 0}#garage .g-find{height:56px}}@media (max-width:900px){#garage{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;flex-direction:column;display:flex;overflow-y:auto}#garage>*,#garage .g-page>*{flex:none}#garage .g-page{min-height:0;padding:calc(var(--sa-t) + 14px) calc(var(--sa-r) + 16px) 8px calc(var(--sa-l) + 16px);flex-direction:column;gap:14px;display:flex;overflow:visible}#garage .g-page:after{display:none}#garage .g-head{grid-template-columns:minmax(0,1fr) auto;row-gap:10px}#garage .g-nav{grid-area:2/1/auto/-1;margin-left:-12px}#garage .g-right{align-items:flex-end}#garage .g-wallet span{display:none}#garage .g-wallet{width:42px;padding:0}#garage .g-stagechip{display:none}#garage .g-garage{height:clamp(360px,58vh,560px);display:block}#garage .g-stage{position:absolute;inset:0}#garage .g-garage{position:relative}#garage .g-rider{z-index:2;pointer-events:none;background:linear-gradient(90deg,#0a0a0bd9,#0a0a0b00);gap:10px;max-width:70%;padding:12px 12px 12px 0;position:absolute;bottom:0;left:0}#garage .g-name{font-size:clamp(40px,12vw,64px)}#garage .g-blurb{font-size:15px}#garage .g-stage-hint{top:auto;bottom:8px;right:0}#garage .g-reset{top:8px;bottom:auto}#garage .g-stage-state{top:44px;bottom:auto}#garage .g-cards{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;gap:10px;margin:0 -16px;padding:0 16px 6px;display:flex;overflow-x:auto}#garage .g-card{scroll-snap-align:start;flex:0 0 150px}#garage .g-roster-note,#garage .g-foot{display:none}#garage .g-side{padding:18px 16px calc(var(--sa-b) + 18px);border-left:0;border-top:1px solid var(--line);flex:none;overflow:visible}#garage .g-cta{margin-top:4px}#garage .g-modal{padding:10px;position:fixed}#garage .g-lobby{grid-template-columns:minmax(0,1fr)}#garage .g-seat{grid-template-columns:30px 96px minmax(0,1fr)}}@media (max-width:480px){#garage .g-wm-text{font-size:24px}#garage .g-tag{letter-spacing:.2em;font-size:10px}#garage .g-card{flex-basis:132px}#garage .g-find{height:60px;font-size:24px}#garage .g-tcards{grid-template-columns:minmax(0,1fr)}}
