@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--accent:#3e6ae1;--accent-press:#3457b1;--accent-text:#3e6ae1;--accent-tint:#3e6ae11f;--danger:#e31937;--regen:#3dbe6e;--warn:#f5a623;--bg:#f4f4f4;--surface:#fff;--surface-2:#eee;--segment-active:#fff;--text:#171a20;--text-2:#5c5e62;--text-3:#171a2047;--track:#171a201a;--shadow:0 1px 2px #0000000f;--segment-shadow:0 1px 3px #00000024;--radius:14px;--radius-sm:12px;--pill:999px;--gap:clamp(12px, 1.6vw, 20px);--touch:64px;--font:"Universal Sans Text", "Universal Sans Display", "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:"Universal Sans Display", "Universal Sans Text", "Inter Variable", system-ui, -apple-system, sans-serif}:root[data-scheme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--accent-text:#8aa6f2;--accent-tint:#3e6ae13d;--bg:#000;--surface:#1c1c1e;--surface-2:#2c2c2e;--segment-active:#48484a;--text:#fff;--text-2:#8e8e93;--text-3:#ffffff47;--track:#ffffff1f;--shadow:none;--segment-shadow:none}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;user-select:none;overscroll-behavior:none;font-size:16px;line-height:1.4}body.modal-open{overflow:hidden}[hidden]{display:none!important}button{font:inherit;color:inherit}.app{gap:var(--gap);max-width:1600px;padding:var(--gap) max(var(--gap), env(safe-area-inset-right)) var(--gap) max(var(--gap), env(safe-area-inset-left));flex-direction:column;margin:0 auto;display:flex}.icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:22px;height:22px}.topbar{grid-template-columns:minmax(0,1fr) auto minmax(max-content,1fr);align-items:center;gap:12px;min-height:44px;display:grid}.topbar-left{min-width:0;display:flex}.brand{color:var(--text);justify-self:center;align-items:center;gap:9px;display:inline-flex}.brand-mark{fill:none;stroke-linecap:round;flex-shrink:0;width:30px;height:30px}.brand-tip{stroke:currentColor;stroke-width:2.2px}.brand-tip.inner{stroke-width:1.6px}.brand-wave{stroke:var(--accent);stroke-width:2.2px}.brand-wave.w2{opacity:.72}.brand-wave.w3{opacity:.45}.brand-word{font-family:var(--font-display);letter-spacing:-.01em;font-size:24px;font-style:italic;font-weight:750;line-height:1}.topbar-actions{flex-shrink:0;grid-column:3;justify-self:end;align-items:center;gap:10px;display:flex}.chip{border-radius:var(--pill);background:var(--surface);max-width:100%;height:36px;box-shadow:var(--shadow);color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:500;display:inline-flex}.chip-label{text-overflow:ellipsis;min-width:0;overflow:hidden}.chip-dot{background:var(--text-3);border-radius:50%;width:8px;height:8px}.chip[data-state=ok] .chip-dot{background:var(--regen)}.chip[data-state=waiting] .chip-dot{background:var(--warn);animation:1.2s ease-in-out infinite pulse}.chip[data-state=lost] .chip-dot,.chip[data-state=error] .chip-dot{background:var(--danger)}.chip[data-state=demo] .chip-dot{background:var(--accent)}@keyframes pulse{50%{opacity:.35}}.icon-btn{background:var(--surface);width:44px;height:44px;box-shadow:var(--shadow);color:var(--text);cursor:pointer;touch-action:manipulation;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:transform .1s;display:inline-flex}.icon-btn:active{transform:scale(.95)}.mode-btn{border-radius:var(--pill);background:var(--surface);height:44px;box-shadow:var(--shadow);color:var(--text-2);cursor:pointer;touch-action:manipulation;border:0;flex-shrink:0;align-items:center;gap:6px;padding:0 14px 0 12px;font-size:15px;font-weight:500;transition:background .15s,color .15s,transform .1s;display:inline-flex}.mode-btn:active{transform:scale(.97)}.mode-btn[aria-pressed=true]{background:var(--accent-tint);box-shadow:none;color:var(--accent-text)}.mode-icon{width:18px;height:18px}.power-btn{border-radius:var(--pill);background:var(--accent);color:#fff;cursor:pointer;touch-action:manipulation;border:0;flex-shrink:0;align-items:center;gap:8px;height:44px;padding:0 18px 0 14px;font-size:15px;font-weight:500;transition:background .15s,transform .1s;display:inline-flex}.power-btn:active{transform:scale(.97)}.power-btn:disabled{opacity:.6;cursor:default}.power-btn.running{background:var(--surface);box-shadow:var(--shadow);color:var(--text)}.power-icon{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;width:18px;height:18px}.power-btn.running .power-icon{stroke:var(--regen)}@media (max-width:520px){.brand-word{display:none}.chip{padding:0 10px;font-size:13px}}.layout{align-items:start;gap:var(--gap);grid-template-columns:minmax(0,1fr);display:grid}.layout.with-pedals{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr)}@media (max-width:820px){.layout.with-pedals{grid-template-columns:minmax(0,1fr)}}.card{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:clamp(16px,2vw,24px)}.banner{border-radius:var(--radius-sm);color:var(--danger);background:#e319371f;padding:14px 16px;font-size:15px;font-weight:500}.cluster{flex-direction:column;justify-content:center;align-items:center;gap:clamp(8px,1.5vh,16px);min-height:min(78vh,760px);display:flex}.engine-title{text-align:center}.engine-name{font-size:clamp(17px,1.8vw,20px);font-weight:500}.engine-desc{color:var(--text-2);margin-top:2px;font-size:14px}.gear-row{color:var(--text-3);letter-spacing:.04em;gap:clamp(14px,2vw,22px);font-size:clamp(18px,2.2vw,24px);font-weight:500;display:flex}.gear{align-items:baseline;transition:color .15s;display:inline-flex}.gear.active{color:var(--text)}.gear-value.refused{animation:.45s ease-out refused}@keyframes refused{0%,to{color:inherit;transform:translate(0)}20%{color:var(--danger);transform:translate(-3px)}40%{color:var(--danger);transform:translate(3px)}60%{color:var(--danger);transform:translate(-2px)}}.dials{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:clamp(8px,3vw,48px);width:min(100%,1000px);display:grid}@media (max-width:560px){.dials{grid-template-columns:minmax(0,1fr)}}.dial{aspect-ratio:320/300;justify-self:center;width:min(100%,460px,62vh);position:relative}.dial-svg{width:100%;height:100%;display:block;overflow:visible}.cluster{--dial-accent:var(--text);--dial-track:var(--track);--dial-tick:var(--text-3);--dial-label:var(--text-2);--dial-ink:var(--text)}.cluster.engine-off .arc-value,.cluster.engine-off .glow-value{visibility:hidden}.ticks line{stroke:var(--dial-tick);stroke-width:2px;stroke-linecap:round}.ticks line.minor{stroke-width:1.5px;opacity:.7}.ticks line.red{stroke:var(--danger);opacity:.6}.ticks text{fill:var(--dial-label);font-family:var(--font);text-anchor:middle;dominant-baseline:central;font-size:14px;font-weight:500}.arc-track,.arc-red,.arc-value{fill:none;stroke-width:6px}.arc-track{stroke:var(--dial-track)}.arc-red{stroke:var(--danger);opacity:.35}.arc-value{stroke:var(--dial-accent);stroke-linecap:round;stroke-dasharray:0 1000;transition:stroke .2s}.arc-value.hot{stroke:var(--danger)}.cluster[data-theme=sport]{--dial-accent:#ff5a1f}.seg{stroke:var(--dial-track);stroke-width:7px}.seg.on{stroke:var(--dial-accent)}.seg.red-zone{stroke:#e3193738}.seg.red-zone.on{stroke:var(--danger)}.cluster[data-theme=sport] .dial-value,.cluster[data-theme=sport] .engine-name,.cluster[data-theme=sport] .gear-row{font-style:italic}.cluster[data-theme=sport] .dial-value{font-weight:600}.cluster[data-theme=sport] .ticks text{fill:var(--text);font-style:italic;font-weight:700}.cluster[data-theme=chrono]{--dial-accent:#e4572e;--dial-tick:var(--text-2)}.ring{fill:none;stroke:var(--dial-tick);stroke-width:1.5px}.ring-red{fill:none;stroke:var(--danger);stroke-width:6px;opacity:.55}.cluster[data-theme=chrono] .ticks line.major{stroke:var(--text);stroke-width:2.5px}.cluster[data-theme=chrono] .ticks line.minor{opacity:1}.cluster[data-theme=chrono] .ticks line.fine{stroke-width:1px;opacity:.7}.needle line{stroke:var(--dial-accent);stroke-width:3px;stroke-linecap:round}.needle.hot line{stroke:var(--danger)}.hub{fill:var(--text)}.cluster[data-theme=chrono] .dial-center,.cluster[data-theme=retro] .dial-center{justify-content:flex-end;padding-bottom:17%}.cluster[data-theme=chrono] .dial-value{font-size:clamp(30px,4.2vw,60px);font-weight:400}.cluster[data-theme=chrono] .dial-caption,.cluster[data-theme=retro] .dial-caption{top:36%;bottom:auto}.cluster[data-theme=retro]{--dial-face:#f2e9d6;--dial-ink:#1d1a16;--dial-accent:#ee6a1f;--dial-tick:var(--dial-ink);--dial-label:var(--dial-ink);--window:#00000012;--window-border:#00000040}.face{fill:var(--dial-face)}.bezel{fill:none;stroke-width:5px}.bezel-a{stop-color:#f7f7f7}.bezel-b{stop-color:#8c8c8c}.bezel-c{stop-color:#d9d9d9}.retro-red{fill:none;stroke:#c8302a;stroke-width:10px}.cluster[data-theme=retro] .ticks line{stroke-linecap:butt}.cluster[data-theme=retro] .ticks line.major{stroke-width:4px}.cluster[data-theme=retro] .ticks line.minor{stroke-width:2px;opacity:1}.cluster[data-theme=retro] .ticks text{font-size:17px;font-weight:700}.needle polygon{fill:var(--dial-accent)}.needle.hot polygon{fill:var(--danger)}.cap{fill:#2b2b2b;stroke:#9a9a9a;stroke-width:2px}.cluster[data-theme=retro] .dial-center,.cluster[data-theme=retro] .dial-caption{color:var(--dial-ink)}.cluster[data-theme=retro] .dial-value{border:1px solid var(--window-border);background:var(--window);border-radius:6px;padding:2px 10px;font-size:clamp(22px,3vw,40px);font-weight:700}.cluster[data-theme=retro] .dial-unit,.cluster[data-theme=retro] .dial-unit span:first-child{color:var(--dial-ink)}.led-dash,.scanner{display:none}.cluster[data-theme=led]{--led-red:#d91c10;--led-amber:#cc8600;--led-green:#16a82e;--led-blue:#1f63d6;--led-off:#00000017;--led-screen:#d91c100d;--led-lamp-text:#111;--dial-label:#9b2a1c;background:#e6e6e9}.cluster[data-theme=led] .dials,.cluster[data-theme=led] .power-meter{display:none}.cluster[data-theme=led] .led-dash{width:min(100%,1100px);height:auto;display:block}.cluster[data-theme=led] .gear-row,.cluster[data-theme=led] .engine-desc{color:var(--dial-label);letter-spacing:.1em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.cluster[data-theme=led] .engine-name{color:var(--led-red);letter-spacing:.24em;text-transform:uppercase}.cluster[data-theme=led] .gear-row{color:var(--led-off)}.cluster[data-theme=led] .gear.active{color:var(--led-red)}.ld-frame{fill:var(--led-screen);stroke:var(--led-red);stroke-width:2px;stroke-opacity:.55}.ld-label,.ld-scale,.ld-trip,.ld-lamp text{letter-spacing:.1em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.ld-label{fill:var(--dial-label);font-size:17px}.ld-scale{fill:var(--dial-label);font-size:15px}.ld-trip{fill:var(--led-amber);font-size:22px}.seven{fill:var(--led-off)}.seven.on{fill:var(--led-red)}.ld-gear .seven.on{fill:var(--led-amber)}.ld-gear.refused .seven.on{animation:.45s ease-out ld-refused}@keyframes ld-refused{0%,60%{fill:var(--led-red)}}.ld-seg,.ld-dot,.ld-cell{fill:var(--led-off)}.ld-cell.on.red{fill:var(--led-red)}.ld-cell.on.amber{fill:var(--led-amber)}.ld-seg.on.green,.ld-dot.on.green{fill:var(--led-green)}.ld-seg.on.amber,.ld-dot.on.amber{fill:var(--led-amber)}.ld-seg.on.red,.ld-dot.on.red{fill:var(--led-red)}.ld-dots.limit .ld-dot.on,.ld-lamp.blink,.scanner.flash span{animation:.16s step-end infinite led-blink}@keyframes led-blink{0%{opacity:1}50%{opacity:.2}}.ld-lamp rect{fill:none;stroke:var(--led-off);stroke-width:2px}.ld-lamp text{fill:var(--led-off);font-size:14px;font-weight:700}.ld-lamp.lamp-green{--lamp:var(--led-green)}.ld-lamp.lamp-amber{--lamp:var(--led-amber)}.ld-lamp.lamp-red{--lamp:var(--led-red)}.ld-lamp.lamp-blue{--lamp:var(--led-blue)}.ld-lamp.on rect{fill:var(--lamp);stroke:var(--lamp)}.ld-lamp.on text{fill:var(--led-lamp-text)}.cluster[data-theme=led] .scanner{gap:4px;width:min(70%,520px);height:10px;display:flex}.scanner span{background:var(--led-red);opacity:.12;border-radius:2px;flex:1}.cluster[data-theme=glow]{--glow-a:#1fb6e0;--glow-b:#7a5cff;--glow-regen:#2fbf7a}.glow-a{stop-color:var(--glow-a)}.glow-b{stop-color:var(--glow-b)}.glow-track{fill:none;stroke:var(--dial-track);stroke-width:3px}.glow-value{fill:none;stroke-width:6px;stroke-linecap:round;stroke-dasharray:0 1000}.glow-regen{stroke:var(--glow-regen)}.ev-dash{display:none}.cluster[data-theme=glow]{--ev-track:#143c8c12;--ev-outline:#1e50aa59;--ev-tick:#14326e80;--ev-label:#142850b3;--ev-ready:#1a6fd6;--ev-road-far:#285ac800;--ev-road-near:#285ac82e;--ev-edge:#2850aa59;--ev-dash:#1e3c8299;--ev-warm-a:#ff7a33;--ev-warm-b:#ff4d7a;--ev-cool-a:#12b886;--ev-cool-b:#2f8fe8;background:linear-gradient(#f3f7fd 0%,#dfe9f7 100%)}.cluster[data-theme=glow] .dials,.cluster[data-theme=glow] .power-meter,.cluster[data-theme=glow] .gear-row{display:none}.cluster[data-theme=glow] .ev-dash{width:min(100%,1100px);height:auto;display:block}.ev-track{fill:var(--ev-track);stroke:var(--ev-outline);stroke-width:1.5px}.ev-fill{fill:url(#ev-warm)}.ev-fill.regen{fill:url(#ev-cool)}.ev-warm-a{stop-color:var(--ev-warm-a)}.ev-warm-b{stop-color:var(--ev-warm-b)}.ev-cool-a{stop-color:var(--ev-cool-a)}.ev-cool-b{stop-color:var(--ev-cool-b)}.ev-tick{stroke:var(--ev-tick);stroke-width:1.5px}.ev-tick.major{stroke-width:2.5px}.ev-scale,.ev-unit,.ev-info,.ev-ready{font-family:var(--font)}.ev-scale{fill:var(--ev-label);font-variant-numeric:tabular-nums;font-size:17px}.ev-big{fill:var(--text);font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:112px;font-weight:250}.ev-unit{fill:var(--ev-label);font-size:22px}.ev-ready{fill:var(--ev-ready);letter-spacing:.14em;opacity:0;font-size:20px;font-weight:600;transition:opacity .3s}.ev-ready.on{opacity:1}.ev-road-far{stop-color:var(--ev-road-far)}.ev-road-near{stop-color:var(--ev-road-near)}.ev-edge{stroke:var(--ev-edge);stroke-width:2px}.ev-dash{fill:var(--ev-dash)}.ev-info{fill:var(--ev-label);font-variant-numeric:tabular-nums;font-size:18px}.sq-dash{display:none}.cluster[data-theme=square]{--sq-panel:#2a2825;--sq-panel-edge:#00000059;--sq-ink:#f4f3ee;--sq-ink-2:#f4f3eeb3;--sq-blue:#52b2f2;--sq-red:#ff5a36;--sq-hub:#121212;--sq-hub-edge:#4a4744;--sq-drum:#0d0d0d;--sq-drum-last:#eee7d6;--sq-drum-last-ink:#141414;--sq-row-bg:#0b0b0b;--sq-flash-a:#fffffff2;--sq-flash-b:#78beffbf;background:repeating-linear-gradient(90deg,#ffffff29 0 1px,#00000008 1px 3px),linear-gradient(160deg,#d3d5d8 0%,#eceef0 38%,#c2c5c9 62%,#e2e4e7 100%)}.cluster[data-theme=square] .dials,.cluster[data-theme=square] .power-meter,.cluster[data-theme=square] .gear-row{display:none}.cluster[data-theme=square] .sq-dash{width:min(100%,1100px,172.414vh - 396.552px);height:auto;display:block}.cluster[data-theme=square] .engine-name{letter-spacing:.16em;text-transform:uppercase;font-weight:600}.sq-panel{fill:var(--sq-panel);stroke:var(--sq-panel-edge);stroke-width:2px}.sq-tick{stroke:var(--sq-ink)}.sq-tick.major{stroke-width:4.5px}.sq-tick.minor{stroke-width:2.5px}.sq-tick.hot{stroke:var(--sq-red)}.sq-num{fill:var(--sq-ink);font-size:26px;font-weight:500}.sq-num.small{font-size:20px}.sq-num.red,.sq-num.hot{fill:var(--sq-red)}.sq-kmh{fill:var(--sq-blue);font-size:16px;font-weight:500}.sq-kmh-mark{fill:var(--sq-blue)}.sq-title{fill:var(--sq-ink);letter-spacing:.04em;font-size:24px;font-weight:500}.sq-unit{fill:var(--sq-ink);font-size:20px}.sq-red-zone{fill:none;stroke:var(--sq-red);stroke-width:7px}.sq-needle polygon{fill:var(--sq-ink)}.sq-hub{fill:var(--sq-hub);stroke:var(--sq-hub-edge);stroke-width:2px}.sq-peg{fill:var(--sq-hub);stroke:var(--sq-hub-edge);stroke-width:1.5px}.sq-drum{fill:var(--sq-drum);stroke:#ffffff1f}.sq-drum.last{fill:var(--sq-drum-last)}.sq-drum-text{fill:var(--sq-ink);font-variant-numeric:tabular-nums;font-size:22px;font-weight:500}.sq-drum-digits.last .sq-drum-text{fill:var(--sq-drum-last-ink)}.sq-drum-unit{fill:var(--sq-ink-2);letter-spacing:.14em;font-size:12px}.sq-gear.refused .sq-drum-text{animation:.45s ease-out sq-refused}@keyframes sq-refused{0%,60%{fill:var(--sq-red)}}.sq-row.red{--sq-led:#ff3b24;--sq-led-off:#ff3b241a;--sq-led-glow:#ff3b248c}.sq-row.green{--sq-led:#39f05c;--sq-led-off:#39f05c17;--sq-led-glow:#39f05c80}.sq-row.amber{--sq-led:#ffb020;--sq-led-off:#ffb0201a;--sq-led-glow:#ffb02080}.sq-row-bg{fill:var(--sq-row-bg);stroke:#ffffff14}.sq-row .seven,.sq-dot{fill:var(--sq-led-off)}.sq-row .seven.on,.sq-dot.on{fill:var(--sq-led);filter:url(#sq-led-glow)}.sq-row-label{fill:var(--sq-led);letter-spacing:.16em;font-size:15px;font-weight:600}.sq-flash{opacity:0;pointer-events:none}.sq-flash-a{stop-color:var(--sq-flash-a)}.sq-flash-b{stop-color:var(--sq-flash-b)}.sq-dash.flux .sq-flash{animation:1s ease-out sq-flux}.sq-dash.flux .sq-speed-needle,.sq-dash.flux .sq-speed-marks{filter:url(#sq-flux-glow)}.sq-dash.flux .sq-speed-needle polygon{fill:#dff1ff}@keyframes sq-flux{0%{opacity:0}3%{opacity:.92}22%{opacity:.1}31%{opacity:.72}55%{opacity:.12}to{opacity:0}}.sq-dash.flux{animation:.5s linear sq-shake}@keyframes sq-shake{0%,to{transform:none}10%{transform:translate(-7px,3px)}22%{transform:translate(6px,-4px)}36%{transform:translate(-5px,-2px)}50%{transform:translate(4px,3px)}66%{transform:translate(-2px,1px)}82%{transform:translate(1px,-1px)}}.sq-fx{pointer-events:none}.sq-ring{fill:none;stroke:#e6f4ff;stroke-width:6px;opacity:0;transform-box:fill-box;transform-origin:50%;vector-effect:non-scaling-stroke;animation:.7s ease-out both sq-ring}@keyframes sq-ring{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(22)}}.sq-bolts{opacity:0;filter:url(#sq-flux-glow);animation:.13s linear both sq-strike}@keyframes sq-strike{0%,to{opacity:1}}.sq-bolt{fill:none;stroke:#f2faff;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.sq-spark{fill:#fff6d6;opacity:0;filter:url(#sq-flux-glow);animation:.75s ease-out both sq-spark}@keyframes sq-spark{0%{opacity:1;transform:none}to{opacity:0;transform:translate(var(--dx), var(--dy))}}@media (prefers-reduced-motion:reduce){.sq-dash.flux{animation:none}.sq-dash.flux .sq-flash{animation:1s ease-out sq-flux-soft}.sq-fx{display:none}}@keyframes sq-flux-soft{0%{opacity:0}25%{opacity:.3}to{opacity:0}}:root[data-scheme=dark] .cluster[data-theme=sport]{--dial-accent:#ff6d33}:root[data-scheme=dark] .cluster[data-theme=chrono]{--dial-accent:#ff6a3d}:root[data-scheme=dark] .cluster[data-theme=retro]{--dial-face:#111;--dial-ink:#efe3c8;--window:#ffffff0f;--window-border:#ffffff38}:root[data-scheme=dark] .cluster[data-theme=led]{--led-red:#ff2b1c;--led-amber:#ffae00;--led-green:#35f24f;--led-blue:#3d8bff;--led-off:#ff2b1c21;--led-screen:#ff2b1c12;--led-lamp-text:#050505;--dial-label:#ff6a4d;background:#050505}:root[data-scheme=dark] .cluster[data-theme=led] .led-dash,:root[data-scheme=dark] .cluster[data-theme=led] .scanner{filter:drop-shadow(0 0 4px #ff2b1c80)}:root[data-scheme=dark] .cluster[data-theme=square]{--sq-panel:#1c1b19;--sq-panel-edge:#ffffff12;background:linear-gradient(#121212 0%,#080808 100%)}:root[data-scheme=dark] .cluster[data-theme=glow]{--glow-a:#45d7ff;--glow-b:#9b7bff;--glow-regen:#43e59a;--ev-track:#78a0ff1a;--ev-outline:#96beff73;--ev-tick:#c8dcff99;--ev-label:#d2e1ffbf;--ev-ready:#7fd3ff;--ev-road-far:#5a8cff00;--ev-road-near:#5a8cff47;--ev-edge:#a0c8ff73;--ev-dash:#dcebffcc;--ev-warm-a:#ff8a4c;--ev-warm-b:#ff5e8a;--ev-cool-a:#2fd6a8;--ev-cool-b:#46b9ff;background:linear-gradient(#071427 0%,#0b2340 55%,#0d2a4d 100%)}.dial-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0 0 -6.67%}.dial-value{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(48px,7vw,112px);font-weight:300;line-height:1}.dial-unit{color:var(--text-2);font-variant-numeric:tabular-nums;margin-top:6px;font-size:clamp(14px,1.5vw,18px);font-weight:500}.dial-unit span:first-child{color:var(--text)}.dial-caption{color:var(--text-2);text-align:center;font-size:13px;position:absolute;bottom:18%;left:0;right:0}.power-meter{align-items:center;width:min(80%,420px);height:12px;display:flex}.power-half{background:var(--track);flex:1;height:4px;overflow:hidden}.power-regen{border-radius:2px 0 0 2px}.power-load{border-radius:0 2px 2px 0}.power-center{background:var(--text-3);border-radius:1px;width:2px;height:12px}.power-fill{height:100%;transition:transform 80ms linear;transform:scaleX(0)}.power-regen .power-fill{background:var(--regen);transform-origin:100%}.power-load .power-fill{background:var(--text);transform-origin:0}.btn{min-height:var(--touch);border-radius:var(--radius-sm);cursor:pointer;touch-action:manipulation;border:0;justify-content:center;align-items:center;padding:0 24px;font-size:17px;font-weight:500;transition:background .15s,transform .1s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:active{background:var(--accent-press)}.btn-secondary{background:var(--surface-2);color:var(--text)}.note{color:var(--text-2);margin:0;font-size:14px;line-height:1.45}.field{flex-direction:column;gap:10px;display:flex}.field-head{justify-content:space-between;align-items:baseline;display:flex}.field-label{color:var(--text-2);font-size:15px;font-weight:500}.field-value{font-variant-numeric:tabular-nums;font-size:15px}.segmented{border-radius:var(--pill);background:var(--surface-2);gap:4px;padding:4px;display:flex}.segmented button{border-radius:var(--pill);min-height:56px;color:var(--text-2);white-space:nowrap;cursor:pointer;touch-action:manipulation;background:0 0;border:0;flex:1;padding:0 10px;font-size:15px;font-weight:500;transition:background .15s,color .15s}.segmented button[aria-checked=true]{background:var(--segment-active);box-shadow:var(--segment-shadow);color:var(--text)}.slider{--pct:50%;cursor:pointer;appearance:none;background:0 0;width:100%;height:44px;margin:0}.slider::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent) 0 var(--pct), var(--track) var(--pct) 100%);border-radius:5px;height:10px}.slider::-webkit-slider-thumb{appearance:none;background:#fff;border:0;border-radius:50%;width:32px;height:32px;margin-top:-11px;box-shadow:0 1px 4px #0000004d}.slider::-moz-range-track{background:linear-gradient(to right, var(--accent) 0 var(--pct), var(--track) var(--pct) 100%);border-radius:5px;height:10px}.slider::-moz-range-thumb{background:#fff;border:0;border-radius:50%;width:32px;height:32px;box-shadow:0 1px 4px #0000004d}.switch-row{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:44px;font-size:15px;display:flex}.switch{background:var(--track);cursor:pointer;appearance:none;border-radius:16px;flex-shrink:0;width:52px;height:32px;margin:0;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:26px;height:26px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.switch:checked{background:var(--accent)}.switch:checked:after{transform:translate(20px)}.pedals{flex-direction:column;gap:12px;display:flex}.pedal-row{grid-template-columns:1fr 1.3fr;gap:12px;height:clamp(200px,48vh,420px);display:grid}.pad{border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);cursor:pointer;touch-action:none;border:0;justify-content:center;align-items:flex-end;padding:0 0 16px;font-size:17px;font-weight:500;display:flex;position:relative;overflow:hidden}.pad-brake{align-items:center;padding:0;transition:background .1s}.pad-brake.pressed{background:var(--danger);color:#fff}.pad-fill{background:var(--accent);opacity:.85;transform-origin:bottom;position:absolute;inset:0;transform:scaleY(0)}.pad-label{position:relative}.shift-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.pad.disabled{opacity:.45}.settings{z-index:5;padding:var(--gap);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-panel{background:var(--surface);border-radius:18px;flex-direction:column;width:min(1080px,100%);height:min(760px,100%);display:flex;overflow:hidden;box-shadow:0 12px 40px #00000040}.settings-head{border-bottom:1px solid var(--track);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 14px 28px;display:flex}.settings-head .icon-btn{background:var(--surface-2);box-shadow:none}.settings-title{font-family:var(--font-display);margin:0;font-size:22px;font-weight:600}.settings-body{flex:1;grid-template-columns:240px minmax(0,1fr);min-height:0;display:grid}.settings-nav{border-right:1px solid var(--track);flex-direction:column;gap:4px;padding:16px 12px;display:flex;overflow-y:auto}.settings-nav button{border-radius:var(--radius-sm);min-height:56px;color:var(--text-2);text-align:left;cursor:pointer;touch-action:manipulation;background:0 0;border:0;flex-shrink:0;align-items:center;gap:14px;padding:0 16px;font-size:16px;font-weight:500;transition:background .15s,color .15s;display:flex}.settings-nav button[aria-selected=true]{background:var(--surface-2);color:var(--text)}.settings-content{padding:24px 28px 32px;overflow-y:auto}.settings-section{flex-direction:column;gap:22px;max-width:640px;display:flex}.settings-section h3{margin:0;font-size:20px;font-weight:500}.settings-foot{border-top:1px solid var(--track);padding:14px 28px}@media (max-width:760px){.settings{padding:0}.settings-panel{border-radius:0;height:100%}.settings-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.settings-nav{border-right:0;border-bottom:1px solid var(--track);flex-direction:row;padding:8px 12px;overflow:auto hidden}.settings-nav button{min-height:48px}.settings-content{padding:20px 16px 28px}.settings-foot{padding:12px 16px}}.engine-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.engine-tile{border:2px solid var(--track);border-radius:var(--radius);text-align:left;cursor:pointer;touch-action:manipulation;background:0 0;flex-direction:column;gap:4px;padding:18px 20px;display:flex}.engine-tile[aria-pressed=true]{border-color:var(--accent)}.engine-tile-name{font-size:17px;font-weight:500}.engine-tile-desc{color:var(--text-2);font-size:14px}.diag-list{grid-template-columns:auto minmax(0,1fr);gap:8px 16px;margin:0;font-size:14px;display:grid}.diag-list dt{color:var(--text-2)}.diag-list dd{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;user-select:text;margin:0}.export-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.overlay{z-index:10;background:#0000008c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}
