:root{--ink: #f5f5f7;--ink-2: rgba(245, 245, 247, .72);--ink-3: rgba(245, 245, 247, .46);--ink-4: rgba(245, 245, 247, .28);--fill-1: rgba(255, 255, 255, .06);--fill-2: rgba(255, 255, 255, .1);--fill-3: rgba(255, 255, 255, .16);--sep: rgba(255, 255, 255, .09);--edge: rgba(255, 255, 255, .1);--material: rgba(24, 28, 34, .56);--material-strong: rgba(20, 24, 30, .74);--blur: blur(28px) saturate(170%);--accent: #f2c14e;--accent-soft: rgba(242, 193, 78, .18);--ground: #0c1116;--ui: Inter, "SF Pro Text", "Segoe UI", system-ui, sans-serif;--display: "Barlow Condensed", "Arial Narrow", sans-serif;--panel-w: 380px;--spring: cubic-bezier(.25, 1, .4, 1)}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;height:100%;overflow:hidden;background:var(--ground)}body{font-family:var(--ui);color:var(--ink);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01"}#app{position:fixed;inset:0}#app canvas{display:block;width:100%;height:100%}button{font-family:inherit}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff29;border-radius:8px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:#ffffff4d}.loading{position:fixed;inset:0;z-index:10;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 70%,#2c2620,#14171b 55%,#0a0c0f);transition:opacity 1.2s ease}.loading.done{opacity:0;pointer-events:none}.loading.title{background:linear-gradient(180deg,#0a0c0f00 45%,#0a0c0f80);place-items:end center;padding-bottom:12vh}.loading.title .loading-inner{width:auto}.loading.title h1{font-size:88px;text-shadow:0 4px 30px rgba(0,0,0,.3)}body:has(.loading.title:not(.done)) .hud,body.menu-open .hud{opacity:0;pointer-events:none}.loading.title #loadText,.loading.title .bar{display:none}.loading-inner{display:grid;gap:16px;justify-items:center;width:min(320px,80vw)}.loading h1{margin:0;font:700 64px/1 var(--display);letter-spacing:.3em;text-transform:uppercase;padding-left:.3em;color:#f6efe2;white-space:nowrap}.loading p{margin:0;font:500 13px var(--ui);color:var(--ink-2)}.bar{width:100%;height:2px;background:#ffffff1f;overflow:hidden;border-radius:2px}.bar span{display:block;height:100%;width:0;background:var(--accent);transition:width .3s ease}.press{display:none;align-items:center;gap:8px;margin:0;font:500 14px/1 var(--ui);color:var(--ink);animation:breathe 2.6s ease-in-out infinite}.loading.title .press{display:inline-flex}[data-device=kbm] .press [data-glyph]{display:none}@keyframes breathe{50%{opacity:.5}}.glyph{height:22px;width:auto;display:block;pointer-events:none;color:var(--ink);overflow:visible;flex:none}[data-glyph]{display:inline-flex;align-items:center;gap:3px}.glyph .g-ring{fill:#ffffff0f;stroke:currentColor;stroke-width:1.3;opacity:.85}.glyph .g-line{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.glyph .g-fill{fill:currentColor}.glyph .g-soft{fill:currentColor;opacity:.16}.glyph .g-text{fill:currentColor;font-family:var(--ui);font-weight:600;text-anchor:middle}.hud{position:fixed;inset:0;pointer-events:none;transition:opacity .4s ease}.hud.hide>:not(.panel):not(.toast){opacity:0}.hud>*{transition:opacity .4s ease}.top{position:absolute;left:20px;right:20px;top:18px;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.status{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 12px;font:500 12px/1 var(--ui);font-variant-numeric:tabular-nums;color:var(--ink);border-radius:999px;background:var(--material);border:1px solid var(--edge);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur)}.route-signs{position:absolute;left:0;right:0;top:34%;pointer-events:none}.route-card{position:absolute;display:flex;align-items:center;gap:12px;min-width:180px;max-width:240px;padding:11px 16px 11px 13px;border-radius:16px;background:var(--material);border:1px solid var(--edge);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);opacity:0;transition:opacity .7s ease,transform .8s var(--spring),border-color .4s ease,box-shadow .4s ease}.route-card.left{left:22px;transform:translate(-28px)}.route-card.right{right:22px;transform:translate(28px);flex-direction:row-reverse;text-align:right;padding:11px 13px 11px 16px}.route-card.show{opacity:.72;transform:none}.route-card.show.on{opacity:1;border-color:#f0c24a8c;box-shadow:0 0 0 1px #f0c24a2e}.rc-arrow{flex:none;width:26px;height:26px;color:var(--ink-2);transition:color .4s ease}.rc-arrow svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.rc-arrow.flip svg{transform:scaleX(-1)}.route-card.on .rc-arrow{color:var(--accent)}.rc-text{display:grid;gap:4px}.rc-text b{font:600 16px/1.1 var(--display);color:var(--ink);white-space:nowrap}.rc-text span{font:500 11.5px/1.2 var(--ui);color:var(--ink-3);white-space:nowrap}.flash{position:fixed;inset:0;background:#fff;opacity:0;pointer-events:none;z-index:40}.flash.go{animation:flash .45s ease-out}.place{position:absolute;left:50%;top:66px;transform:translate(-50%,-4px);text-align:center;pointer-events:none;opacity:0;transition:opacity 1.4s ease,transform 1.4s ease}.place.show{opacity:1;transform:translate(-50%)}.place-name{display:block;font:600 30px/1.1 var(--display);letter-spacing:.01em;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.35);white-space:nowrap}.place-kind{display:block;margin-top:7px;font:600 10.5px/1 var(--ui);letter-spacing:.24em;text-transform:uppercase;color:#ffffffd1;text-shadow:0 1px 6px rgba(0,0,0,.4)}.radio-chip{gap:9px;max-width:44vw;padding:0 14px 0 12px;transition:background-color .9s ease,border-color .9s ease,backdrop-filter .9s ease,-webkit-backdrop-filter .9s ease}.radio-chip b{font-weight:600;color:var(--accent);white-space:nowrap;transition:color .9s ease}.radio-chip .song{color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .9s ease}.radio-chip.show{animation:chipIn .55s var(--spring)}@keyframes chipIn{0%{transform:translateY(-5px) scale(.97)}}.radio-chip.fade{background-color:#181c2200;border-color:#fff0;backdrop-filter:blur(0px) saturate(100%);-webkit-backdrop-filter:blur(0px) saturate(100%)}.radio-chip.fade b,.radio-chip.fade .song{color:#f5f5f700}.eq{display:inline-flex;align-items:flex-end;gap:2px;height:11px;flex:none;transition:opacity .9s ease}.eq i{display:block;width:2.5px;height:100%;border-radius:1px;background:var(--accent);transform-origin:50% 100%;animation:eq .9s ease-in-out infinite alternate}.eq i:nth-child(1){animation-duration:.62s}.eq i:nth-child(2){animation-duration:.84s;animation-delay:-.3s}.eq i:nth-child(3){animation-duration:.55s;animation-delay:-.15s}.eq i:nth-child(4){animation-duration:.95s;animation-delay:-.5s}@keyframes eq{0%{transform:scaleY(.2)}to{transform:scaleY(1)}}.radio-chip.fade .eq{opacity:0}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn{pointer-events:auto;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:34px;padding:0 14px;font:500 13px/1 var(--ui);color:var(--ink);white-space:nowrap;background:var(--material);border:1px solid var(--edge);border-radius:999px;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);transition:background .2s,border-color .2s,transform .15s}.btn:hover{background:var(--material-strong);border-color:#ffffff2e}.btn:active{transform:scale(.97)}.btn .glyph{height:18px;opacity:.85}.btn[aria-pressed=true]{border-color:#f2c14e99;color:var(--accent)}.btn[aria-pressed=true] .glyph{color:var(--accent)}.btn.icon{width:34px;padding:0}.btn.primary{background:var(--accent);border-color:transparent;color:#1b1608;font-weight:600;height:38px;padding:0 22px}.btn.primary:hover{background:#f6cd68}.btn.primary .glyph{color:#1b1608}[data-device=kbm] .btn.primary [data-glyph]{display:none}.btn.quiet{background:var(--fill-1);backdrop-filter:none;-webkit-backdrop-filter:none;height:38px;padding:0 18px}.btn.quiet:hover{background:var(--fill-2)}.burger{display:block;width:14px;height:10px;border-top:1.6px solid currentColor;border-bottom:1.6px solid currentColor;position:relative}.burger:after{content:"";position:absolute;left:0;right:0;top:2.6px;border-top:1.6px solid currentColor}[data-device=pad] .menu-btn .burger,[data-device=kbm] .menu-btn [data-glyph]{display:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pad-focus{outline:1.5px solid rgba(245,245,247,.9)!important;outline-offset:3px;box-shadow:0 0 0 6px #ffffff0f}.seg-btn.pad-focus{outline-offset:-2.5px;box-shadow:none}.car-tile.pad-focus,.swatch.pad-focus,.part-tile.pad-focus{outline-offset:2px;box-shadow:none}.swatch[aria-pressed=true].pad-focus{outline-offset:5px}.gauge{position:absolute;left:24px;bottom:22px;display:grid;gap:9px;text-shadow:0 2px 16px rgba(0,0,0,.35)}.speed-row{display:flex;align-items:baseline;gap:10px}.speed-box{display:inline-block;width:1.55em;text-align:left;font:700 88px/.82 var(--display)}.speed{font:inherit;font-variant-numeric:tabular-nums}.unit{font:500 12px var(--ui);color:var(--ink-2);min-width:3.2em}.gear{display:inline-flex;align-items:baseline;justify-content:center;gap:2px;min-width:2.3em;margin-left:4px;align-self:center;font:600 18px/1 var(--display);color:var(--accent);border:1px solid rgba(242,193,78,.45);border-radius:7px;padding:4px 7px 3px}.gear b{font-weight:600;font-variant-numeric:tabular-nums}.gear small{font:600 9.5px/1 var(--ui);opacity:.75}.drive{display:inline-flex;align-self:center}.drive-icon{width:16px;height:22px;display:block}.drive-icon .w{fill:none;stroke:var(--ink-3);stroke-width:1.4}.drive-icon .w.on{fill:var(--accent);stroke:var(--accent)}.tach{position:relative;width:230px;height:4px;border-radius:2px;background:#ffffff24;overflow:hidden}.tach span{position:absolute;inset:0;background:var(--ink);border-radius:2px;transform:scaleX(0);transform-origin:left center}.tach span.red{background:#ff6a4a}.tach-red{position:absolute;right:0;top:0;bottom:0;width:10%;background:#ff6a4a59}.meta{display:flex;gap:18px;font:500 12px var(--ui);color:var(--ink-2);font-variant-numeric:tabular-nums}.meta b{color:var(--ink);font-weight:600}.ahead{position:absolute;left:50%;bottom:16px;transform:translate(-50%);display:grid;justify-items:center;gap:6px}#roadPreview{width:150px;height:104px;display:block;filter:drop-shadow(0 1px 6px rgba(0,0,0,.25))}.auto-tag{display:inline-flex;align-items:center;gap:7px;font:600 12px/1 var(--ui);color:var(--accent);text-shadow:0 1px 10px rgba(0,0,0,.5)}.auto-tag .glyph{height:18px;color:var(--accent)}.corner{position:absolute;right:20px;bottom:20px;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.keys{display:grid;grid-template-columns:auto auto;column-gap:12px;row-gap:8px;align-items:center;font:500 12px/1 var(--ui);color:var(--ink-2);padding:18px 4px 4px 40px;background:radial-gradient(ellipse at 100% 100%,#080b0e6b,#080b0e00 70%);text-shadow:0 1px 8px rgba(0,0,0,.5);transition:opacity 1.2s ease}.keys>span{display:flex;align-items:center;min-height:22px}.keys>span:nth-child(odd){gap:3px;justify-content:flex-end}.keys .glyph{height:21px}.keys.faded{opacity:0}.toast{position:absolute;left:50%;top:76px;transform:translate(-50%);display:inline-flex;align-items:center;height:32px;padding:0 16px;font:500 13px/1 var(--ui);border-radius:999px;background:var(--material-strong);border:1px solid var(--edge);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);animation:toast .35s var(--spring)}@keyframes toast{0%{opacity:0;transform:translate(-50%,-6px) scale(.98)}}.close{pointer-events:auto;cursor:pointer;flex:none;width:30px;height:30px;padding:0;border-radius:50%;display:grid;place-items:center;background:var(--fill-2);border:0;color:var(--ink-2);transition:background .2s,color .2s}.close:hover{background:var(--fill-3);color:var(--ink)}.close .x-icon{display:block;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;fill:none}.close .glyph{height:22px}[data-device=kbm] .close [data-glyph],[data-device=pad] .close .x-icon{display:none}[data-device=pad] .close{background:transparent}.panel{pointer-events:auto;position:absolute;top:66px;right:20px;bottom:20px;width:min(var(--panel-w),calc(100vw - 40px));display:flex;flex-direction:column;overflow:hidden;background:var(--material);border:1px solid var(--edge);border-radius:22px;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 20px 60px #00000040;animation:sheet .45s var(--spring)}@keyframes sheet{0%{transform:translate(18px);opacity:0}}.panel-head{display:flex;align-items:center;gap:8px;padding:16px 16px 10px 20px}.panel-head h2{flex:1}.head-hint{display:flex;align-items:center;gap:8px}.head-hint .glyph{height:20px}.head-hint .slash{font:400 18px/1 var(--ui);color:var(--ink-4)}[data-device=kbm] .head-hint{display:none}.panel h2,.modal h2{margin:0;font:600 20px/1.2 var(--ui);letter-spacing:-.01em}.panel-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:14px 16px 18px;display:flex;flex-direction:column;gap:20px;mask-image:linear-gradient(to bottom,transparent 0,#000 12px,#000 calc(100% - 16px),transparent 100%)}.group-wrap{display:grid;gap:8px}.group-wrap[hidden]{display:none}.group-title{display:flex;align-items:center;justify-content:space-between;padding:0 6px;font:600 11.5px/1 var(--ui);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.group-title .link{pointer-events:auto;cursor:pointer;border:0;background:none;padding:2px 0;font:500 12px/1 var(--ui);letter-spacing:0;text-transform:none;color:var(--accent)}.group{background:var(--fill-1);border-radius:14px;overflow:hidden}.group.plain{background:none;overflow:visible}.row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;padding:8px 14px}.row+.row:before{content:"";position:absolute;top:0;left:14px;right:0;border-top:1px solid var(--sep)}.row.stack{flex-direction:column;align-items:stretch;gap:10px;padding:12px 14px 14px}.row-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font:500 14px/1.25 var(--ui);color:var(--ink)}.row.stack .row-label{width:100%}.row-value{font:500 13px/1 var(--ui);color:var(--ink-2);font-variant-numeric:tabular-nums}.row.dim .row-label{color:var(--ink-2)}.note{margin:0;padding:0 6px;font:400 12.5px/1.45 var(--ui);color:var(--ink-3)}.segmented{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:2px;border-radius:10px;background:var(--fill-2);isolation:isolate}.seg-thumb{position:absolute;top:2px;bottom:2px;left:2px;width:0;border-radius:8px;z-index:-1;opacity:0;background:#fff3;box-shadow:0 2px 8px #0000002e,inset 0 0 0 .5px #ffffff26;transition:transform .4s var(--spring),width .4s var(--spring),opacity .2s}.segmented.has-value .seg-thumb{opacity:1}.seg-btn{pointer-events:auto;cursor:pointer;border:0;background:none;min-height:32px;padding:7px 10px;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font:500 13px/1 var(--ui);color:var(--ink-2);transition:color .25s}.seg-btn:hover{color:var(--ink)}.seg-btn[aria-pressed=true]{color:var(--ink);font-weight:600}.segmented.tall .seg-btn{min-height:58px}.seg-btn .drive-icon{width:15px;height:20px}.stepper{pointer-events:auto;cursor:pointer;flex:none;min-width:170px;height:32px;padding:0 6px;border:0;border-radius:10px;display:grid;grid-template-columns:22px 1fr 22px;align-items:center;background:var(--fill-2);color:var(--ink);font:500 13px/1 var(--ui);transition:background .2s}.stepper:hover{background:var(--fill-3)}.st-val{text-align:center;white-space:nowrap}.st-arrow{display:grid;place-items:center;color:var(--ink-3)}.st-arrow svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.stepper:hover .st-arrow{color:var(--ink-2)}.stepper.pending .st-val{color:var(--accent)}.st-box{display:flex;align-items:center;gap:8px;flex:none}.st-go{pointer-events:auto;cursor:pointer;height:32px;padding:0 12px;border:0;border-radius:10px;display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:#1a1508;font:600 13px/1 var(--ui);animation:fade .25s ease}.st-go:hover{filter:brightness(1.08)}.st-go .glyph{height:18px}[data-device=kbm] .st-go-glyph{display:none}[data-device=pad] .st-go{background:#15181c;color:#f5f2ea;box-shadow:inset 0 0 0 1px #ffffff1f}.switch{pointer-events:auto;cursor:pointer;flex:none;position:relative;width:46px;height:28px;padding:0;border:0;border-radius:999px;background:#ffffff29;transition:background .3s var(--spring)}.switch:after{content:"";position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #0000004d;transition:transform .35s var(--spring)}.switch[aria-checked=true]{background:var(--accent)}.switch[aria-checked=true]:after{transform:translate(18px)}.slider{pointer-events:auto;-webkit-appearance:none;appearance:none;width:100%;height:22px;margin:0;background:transparent;cursor:pointer;--p: 50%}.slider::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:linear-gradient(to right,var(--accent) var(--p),rgba(255,255,255,.16) var(--p))}.slider::-moz-range-track{height:4px;border-radius:2px;background:#ffffff29}.slider::-moz-range-progress{height:4px;border-radius:2px;background:var(--accent)}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;margin-top:-8px;border-radius:50%;background:#fff;box-shadow:0 2px 8px #00000059}.slider::-moz-range-thumb{width:20px;height:20px;border:0;border-radius:50%;background:#fff;box-shadow:0 2px 8px #00000059}.slider.pad-focus{outline-offset:6px;border-radius:6px}.row .slider.inline{width:190px;flex:none}.car-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.car-tile{pointer-events:auto;cursor:pointer;height:44px;padding:0 14px;border-radius:12px;border:0;text-align:left;background:var(--fill-1);color:var(--ink-2);font:500 13.5px/1 var(--ui);box-shadow:inset 0 0 0 1px transparent;transition:background .2s,color .2s,box-shadow .25s}.car-tile:hover{background:var(--fill-2);color:var(--ink)}.car-tile[aria-pressed=true]{color:var(--ink);background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent);font-weight:600}.car-card{display:grid;gap:14px;padding:16px;background:var(--fill-1);border-radius:14px}.blurb{margin:0;font:400 13.5px/1.45 var(--ui);color:var(--ink-2)}.figures{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.figures div{display:grid;gap:5px}.figures dt{font:500 11px/1 var(--ui);color:var(--ink-3)}.figures dd{margin:0;font:600 26px/1 var(--display);font-variant-numeric:tabular-nums}.stats{display:grid;gap:9px}.stat{display:grid;grid-template-columns:76px 1fr;align-items:center;gap:10px;font:500 12px/1 var(--ui);color:var(--ink-2)}.stat .track{height:4px;border-radius:2px;background:#ffffff1a;overflow:hidden}.stat .fill{height:100%;background:var(--accent);border-radius:2px;transition:width .5s var(--spring)}.swatches{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;padding:14px}.swatch{pointer-events:auto;cursor:pointer;aspect-ratio:1;border-radius:50%;border:0;padding:0;box-shadow:inset 0 0 0 1px #fff3,inset 0 -6px 10px #00000040,inset 0 5px 8px #fff3;transition:transform .25s var(--spring),box-shadow .25s}.swatch:hover{transform:scale(1.06)}.swatch.factory{background:conic-gradient(#c8432a,#e2a322,#70a6c9,#1e4a33,#c8432a)}.swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--ground),0 0 0 3.5px var(--accent),inset 0 -6px 10px #00000040}.part-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px 14px 6px}.part-tile{pointer-events:auto;cursor:pointer;aspect-ratio:1;border:0;border-radius:12px;padding:0;background:var(--fill-1) center / 92% no-repeat;box-shadow:inset 0 0 0 1px #ffffff0f;display:grid;place-items:end center;transition:background-color .2s,box-shadow .25s}.part-tile:hover{background-color:var(--fill-2)}.part-tile[aria-pressed=true]{background-color:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}.part-tile.first:not([data-url]){place-items:center}.part-tile span{font:500 12px/1 var(--ui);color:var(--ink-2);padding-bottom:7px}.part-tile.first[data-url] span{display:none}.swatches.rims{grid-template-columns:repeat(8,1fr);gap:8px}.swatches.rims .swatch{--rim: #b9bcc0;background:radial-gradient(circle,var(--rim) 0 50%,#1c1d20 53% 100%)}.swatches.rims .swatch.stock{background:radial-gradient(circle,#d9dadc 0 22%,#8d9096 25% 50%,#1c1d20 53% 100%)}.group .swatches{padding-bottom:6px}.group .swatches+.row{padding-top:6px}.slider.tint::-webkit-slider-runnable-track{height:8px;border-radius:4px;background:var(--track, rgba(255, 255, 255, .16))}.slider.tint::-moz-range-track{height:8px;border-radius:4px;background:var(--track, rgba(255, 255, 255, .16))}.slider.tint::-moz-range-progress{background:transparent}.slider.tint::-webkit-slider-thumb{margin-top:-6px}.garage-page{display:flex;flex-direction:column;gap:20px}.garage-page[hidden]{display:none}.panel-tabs{display:flex;padding:0 16px 4px}.panel-tabs .segmented{flex:1}.panel-tabs .seg-btn{min-height:32px}.stock-btn{align-self:center}.code{font:600 17px/1 var(--display);letter-spacing:.14em;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.code.big{font-size:32px;letter-spacing:.12em}.code-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.code-actions{display:flex;gap:6px}.small-btn{pointer-events:auto;cursor:pointer;height:30px;padding:0 12px;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--fill-2);color:var(--ink);font:500 12.5px/1 var(--ui);transition:background .2s}.small-btn:hover{background:var(--fill-3)}.text-field{pointer-events:auto;flex:1;min-width:0;height:34px;padding:0 14px;border-radius:10px;border:0;outline:0;background:var(--fill-2);color:var(--ink);font:600 15px/1 var(--display);letter-spacing:.12em;text-transform:uppercase}.text-field::placeholder{font:400 13px var(--ui);letter-spacing:0;text-transform:none;color:var(--ink-3)}.text-field:focus{box-shadow:inset 0 0 0 1.5px var(--accent)}.text-field.bad{box-shadow:inset 0 0 0 1.5px #ff6a4a;animation:nudge .3s}@keyframes nudge{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.saved{display:grid;gap:3px;min-width:0}.saved b{font:500 14px/1.2 var(--ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.saved .code{font-size:13px;color:var(--ink-3)}.icon-link{pointer-events:auto;cursor:pointer;width:28px;height:28px;border:0;border-radius:50%;display:grid;place-items:center;background:none;color:var(--ink-3)}.icon-link:hover{background:var(--fill-2);color:var(--ink)}.icon-link svg{stroke:currentColor;stroke-width:1.6;stroke-linecap:round;fill:none}.menu{position:fixed;inset:0;z-index:8;background:linear-gradient(90deg,#080b0eb8,#080b0e5c 36%,#080b0e00 62%);animation:fade .5s ease}@keyframes fade{0%{opacity:0}}.menu-main{position:absolute;left:clamp(28px,7vw,110px);top:0;bottom:0;width:min(420px,80vw);display:flex;flex-direction:column;justify-content:center;gap:40px;transition:opacity .35s ease,transform .45s var(--spring)}body[data-screen]:not([data-screen=main]) .menu-main{opacity:0;transform:translate(-12px);pointer-events:none}body[data-screen]:not([data-screen=main]) .menu{background:#080b0e61;transition:background .4s}.menu-brand h1{margin:0;font:700 64px/.95 var(--display);letter-spacing:.22em;text-transform:uppercase;color:#f6efe2}.menu-brand p{margin:12px 0 0;font:400 14px/1.4 var(--ui);color:var(--ink-2)}.menu-list{display:grid;gap:2px;justify-items:start}.menu-list button{pointer-events:auto;cursor:pointer;border:0;background:none;color:var(--ink-2);padding:10px 0 10px 20px;position:relative;font:500 22px/1 var(--ui);letter-spacing:-.01em;transition:color .25s,transform .35s var(--spring)}.menu-list button:before{content:"";position:absolute;left:0;top:50%;width:3px;height:18px;margin-top:-9px;border-radius:2px;background:var(--accent);transform:scaleY(0);transition:transform .3s var(--spring)}.menu-list button:hover,.menu-list button.pad-focus{color:var(--ink);transform:translate(6px);outline:none!important;box-shadow:none}.menu-list button:hover:before,.menu-list button.pad-focus:before{transform:scaleY(1)}.menu-foot{margin:0;display:flex;align-items:center;gap:8px;font:500 12px/1 var(--ui);color:var(--ink-3)}.menu-foot .glyph{height:20px}.menu-foot span+[data-glyph]{margin-left:8px}[data-device=kbm] .menu-foot{display:none}.modal{position:absolute;left:50%;top:50%;width:min(820px,calc(100vw - 48px));height:min(640px,calc(100vh - 64px));transform:translate(-50%,-50%);display:flex;flex-direction:column;overflow:hidden;background:var(--material);border:1px solid var(--edge);border-radius:26px;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 30px 90px #00000059;animation:rise .5s var(--spring)}@keyframes rise{0%{opacity:0;transform:translate(-50%,calc(-50% + 16px)) scale(.985)}}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 18px 14px 26px}.modal-head.tabbed{justify-content:center;position:relative;padding:18px 18px 14px}.modal-head.tabbed .close{position:absolute;right:18px;top:18px}.tabs-slot .segmented{min-width:440px}.tabs-slot .seg-btn{min-height:34px;font-size:13.5px}.tab-hint{position:absolute;left:22px;top:22px}.tab-hint .glyph{height:20px}[data-device=kbm] .tab-hint{display:none}.modal-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:16px 26px 26px;display:grid;gap:22px;align-content:start;mask-image:linear-gradient(to bottom,transparent 0,#000 14px,#000 calc(100% - 18px),transparent 100%)}.modal-foot{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:14px 22px 20px;border-top:1px solid var(--sep)}.modal-body{position:relative}.page{display:grid;gap:22px;align-content:start;min-width:0;animation:pageIn .45s var(--spring)}.page.from-left{animation-name:pageInLeft}.page.still{animation:none}.page.narrow{width:100%;max-width:560px;justify-self:center}.page.leaving{position:absolute;left:26px;right:26px;pointer-events:none;animation:pageOutLeft .26s ease forwards}.page.leaving.to-right{animation-name:pageOutRight}.page.leaving.narrow{width:auto;margin:0 auto}@keyframes pageIn{0%{opacity:0;transform:translate(28px)}}@keyframes pageInLeft{0%{opacity:0;transform:translate(-28px)}}@keyframes pageOutLeft{to{opacity:0;transform:translate(-28px)}}@keyframes pageOutRight{to{opacity:0;transform:translate(28px)}}.two-col{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;align-items:start}.two-col.even{grid-template-columns:1fr 1fr}.two-col.rows{align-items:stretch;row-gap:22px}.two-col.rows>.col{display:flex;flex-direction:column;justify-content:space-between;gap:22px}.two-col.rows>.col>.group-wrap:only-child{flex:1;display:flex;flex-direction:column}.two-col.rows>.col>.group-wrap:only-child>.group{flex:1}.press-glyph{display:inline-flex;align-items:center}.col{display:grid;gap:22px;min-width:0}.segmented.inline{flex:none;width:212px}.segmented.inline .seg-btn{padding:7px 6px;white-space:nowrap}.set-pick-row{display:flex;justify-content:center}.segmented.set-pick{width:min(380px,100%)}.bind-fixed{display:inline-flex;align-items:center;gap:3px;height:34px}.bind-fixed .glyph{height:24px}.code-box{align-items:flex-start!important;gap:14px!important;padding:18px 16px 16px!important}.row .text-field{height:34px}.bind-slots{display:flex;gap:8px}.bind-slot{pointer-events:auto;cursor:pointer;width:78px;height:34px;border:0;border-radius:10px;display:grid;place-items:center;background:var(--fill-2);color:var(--ink);font:500 12px/1 var(--ui);transition:background .2s,box-shadow .2s}.bind-slot:hover{background:var(--fill-3)}.bind-slot .glyph{height:24px}.bind-slot .empty{color:var(--ink-4)}.bind-slot.listening{box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--accent);animation:breathe 1.2s infinite}.link{pointer-events:auto;cursor:pointer;border:0;background:none;padding:4px 0;font:500 12.5px/1 var(--ui);color:var(--accent)}.dot{margin:0 7px;color:var(--ink-4)}.lb-figures{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.lb-fig{display:grid;gap:6px;padding:14px 16px;border-radius:14px;background:var(--fill-1)}.lb-fig b{font:600 28px/1 var(--display);letter-spacing:.01em;font-variant-numeric:tabular-nums;white-space:nowrap}.lb-fig span{font:500 12px/1 var(--ui);color:var(--ink-3)}.lb-land{display:grid;gap:12px;padding:16px}.lb-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;gap:2px}.lb-key{display:flex;flex-wrap:wrap;gap:8px 16px;font:500 12.5px/1 var(--ui);color:var(--ink-2)}.lb-key-item{display:inline-flex;align-items:center;gap:6px}.lb-key i{width:8px;height:8px;border-radius:50%}.lb-key em,.lb-shares em{font-style:normal;color:var(--ink-3)}.trip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.modal.wide{width:min(1120px,calc(100vw - 48px));height:min(780px,calc(100vh - 48px))}.lb-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.lb-tile{display:grid;gap:7px;align-content:start;padding:15px 16px 16px;border-radius:14px;background:var(--fill-1);min-width:0}.lt-label{font:600 11px/1 var(--ui);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.lb-tile b{font:600 24px/1.05 var(--display);letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lt-sub{font:500 12.5px/1.2 var(--ui);color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-chart{display:flex;align-items:flex-end;gap:6px;height:110px;padding:16px 16px 14px}.lb-col{flex:0 1 46px;height:100%;display:flex;align-items:flex-end}.lb-col i{display:block;width:100%;border-radius:4px 4px 2px 2px;opacity:.85;transition:opacity .2s}.lb-col:hover i{opacity:1}.trip-card{pointer-events:auto;cursor:pointer;display:grid;gap:7px;padding:12px 14px 14px;border:0;border-radius:14px;text-align:left;background:var(--fill-1);color:var(--ink);transition:background .2s,transform .25s var(--spring)}.trip-card:hover{background:var(--fill-2)}.trip-card .lb-profile{width:100%;height:58px;display:block;margin-bottom:4px}.tc-date{font:600 14px/1.2 var(--ui)}.tc-meta{font:500 12.5px/1 var(--ui);color:var(--ink-2);font-variant-numeric:tabular-nums}.lb-head{display:flex;align-items:center;gap:16px}.lb-back{padding-left:9px}.lb-back svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.lb-title h3{margin:0;font:600 19px/1.2 var(--ui);letter-spacing:-.01em}.lb-title p{margin:4px 0 0;font:500 12.5px/1.2 var(--ui);color:var(--ink-3)}.lb-line{padding:12px;border-radius:16px;background:var(--fill-1)}.lb-profile.big{width:100%;height:130px;display:block}.lb-shares{font:500 13.5px/1.3 var(--ui);min-height:44px}.lb-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.lb-photos .note{grid-column:1 / -1;padding:0 6px}.lb-photo{pointer-events:auto;cursor:zoom-in;aspect-ratio:16 / 9;border:0;border-radius:10px;background:var(--fill-2) center / cover;transition:transform .25s var(--spring)}.lb-photo:hover{transform:scale(1.03)}.lb-remove{justify-self:start;color:var(--ink-3)}.lb-remove:hover{color:#ff8a70}.lightbox{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:#06080ad1;animation:fade .3s ease;cursor:zoom-out}.lightbox img{max-width:92vw;max-height:88vh;border-radius:12px;box-shadow:0 30px 90px #00000080}body.photo-mode .hud{opacity:0;pointer-events:none}.photo-panel{position:fixed;top:20px;right:20px;bottom:20px;width:min(340px,calc(100vw - 40px));z-index:6}.photo-foot{padding:12px 16px 16px;border-top:1px solid var(--sep)}.photo-foot .shoot{width:100%}.photo-foot .shoot .glyph{height:20px;color:#1b1608}[data-device=kbm] .photo-foot [data-glyph]{display:none}.photo-hints{position:fixed;left:24px;bottom:22px;z-index:6;display:flex;flex-wrap:wrap;gap:10px 20px;max-width:calc(100vw - 420px);font:500 12.5px/1 var(--ui);color:var(--ink-2);text-shadow:0 1px 8px rgba(0,0,0,.6)}.ph-item{display:inline-flex;align-items:center;gap:7px}.ph-glyph{display:inline-flex;align-items:center;gap:3px}.ph-glyph .glyph{height:21px}.photo-flash{position:fixed;inset:0;z-index:30;background:#fff;opacity:0;pointer-events:none}.photo-flash.go{animation:flash .5s ease-out}@keyframes flash{0%{opacity:.85}to{opacity:0}}.photo-frame{position:fixed;inset:0;z-index:5;pointer-events:none;overflow:hidden}.photo-frame:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:100vh;transform:translate(-50%);box-shadow:0 0 0 100vmax #06080a99}.text-area,.text-input{pointer-events:auto;width:100%;border:0;outline:0;border-radius:10px;background:var(--fill-2);color:var(--ink);font:400 14px/1.5 var(--ui);padding:10px 12px;resize:none}.text-area{min-height:132px}.text-input{height:38px;padding:0 12px}.text-area::placeholder,.text-input::placeholder{color:var(--ink-3)}.text-area:focus,.text-input:focus{box-shadow:inset 0 0 0 1.5px var(--accent)}.fb-count{align-self:flex-end;font:500 11.5px/1 var(--ui);color:var(--ink-4);font-variant-numeric:tabular-nums}.fb-status{margin-right:auto;font:500 13px/1.3 var(--ui);color:var(--ink-2)}.fb-status.good{color:#8fd694}.fb-status.bad{color:#ff9a80}.menu-corners{position:fixed;left:clamp(28px,7vw,110px);bottom:28px;z-index:1;display:flex;gap:10px;transition:opacity .35s ease}body[data-screen]:not([data-screen=main]) .menu-corners{opacity:0}body[data-screen]:not([data-screen=main]) .menu-corner{pointer-events:none}.menu-corner{pointer-events:auto;cursor:pointer;height:40px;min-width:40px;padding:0 11px;border:0;border-radius:20px;display:inline-flex;align-items:center;background:var(--fill-2);color:var(--ink-2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:background .25s,color .25s}.menu-corner svg{flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.menu-corner.hot,.menu-corner.pad-focus{background:var(--fill-3);color:var(--ink);outline-offset:3px}.menu-corner.open:not(.hot) .corner-label{color:var(--ink-2)}.corner-label{overflow:hidden;white-space:nowrap;max-width:0;opacity:0;margin-left:0;font:500 13px/1 var(--ui);color:var(--ink);transition:max-width .5s var(--spring),margin-left .5s var(--spring),opacity .2s ease}.menu-corner.open .corner-label,.menu-corner.pad-focus .corner-label{max-width:160px;margin-left:9px;padding-right:3px;opacity:1;transition:max-width .5s var(--spring),margin-left .5s var(--spring),opacity .35s ease .1s}.splash{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 55%,#2a241e,#15171a 58%,#0b0c0e);transition:opacity 1.2s ease}.splash.out{opacity:0;pointer-events:none}.splash-inner{display:grid;justify-items:center;gap:10px;text-align:center}.splash-kicker{margin:0;font:600 12px/1 var(--ui);letter-spacing:.32em;text-transform:uppercase;color:var(--ink-3);padding-left:.32em;opacity:0;animation:splashIn 1.4s .2s ease forwards}.splash-logo{width:min(280px,56vw);height:auto;opacity:0;animation:splashLogo 1.6s .35s cubic-bezier(.2,.8,.2,1) forwards;filter:drop-shadow(0 12px 40px rgba(0,0,0,.45))}.splash-thanks{margin:6px 0 0;font:400 15px/1.7 var(--ui);color:var(--ink-2);opacity:0;animation:splashIn 1.6s 1.7s ease forwards}.splash-thanks b{font-weight:600;color:#f3e6cf}.paw{width:15px;height:15px;margin-left:4px;vertical-align:-2px;fill:#f3e6cf;opacity:.85}@keyframes splashIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes splashLogo{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}.fade{position:fixed;inset:0;z-index:20;background:#06080a;opacity:0;pointer-events:none;transition:opacity 1.6s ease}.fade.on{opacity:1;pointer-events:auto;transition-duration:.7s}.fade{display:grid;place-items:center}.road-loader{display:grid;justify-items:center;gap:14px;opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .5s var(--spring)}.fade.loading .road-loader{opacity:1;transform:none;transition:opacity .6s ease .25s,transform .8s var(--spring) .25s}.rl-kicker{margin:0;font:600 11.5px/1 var(--ui);letter-spacing:.3em;padding-left:.3em;text-transform:uppercase;color:var(--ink-3)}.rl-code{margin:0;min-height:22px;font:600 22px/1 var(--display);letter-spacing:.32em;padding-left:.32em;color:#f6efe2}.rl-bar{width:148px;height:2px;margin-top:8px;border-radius:2px;background:#ffffff1a;overflow:hidden}.rl-bar i{display:block;width:100%;height:100%;border-radius:2px;background:#f6efe2bf;transform:scaleX(0);transform-origin:left;transition:transform .35s ease}@media(max-width:760px){.keys{display:none}.loading.title h1,.menu-brand h1{font-size:46px}.speed-box{font-size:64px}.actions .btn .glyph{display:none}.two-col{grid-template-columns:1fr}.lb-figures,.trip-grid,.lb-tiles{grid-template-columns:repeat(2,1fr)}.tabs-slot .segmented{min-width:0}}@media(prefers-reduced-motion:reduce){.splash-kicker,.splash-logo,.splash-thanks{animation:none;opacity:1}.road-loader,.fade.loading .road-loader{transform:none}.panel,.toast,.modal,.menu,.page{animation:none}}
