:root{--bg: #04060a;--panel: #0a111a;--panel-2: #0e1824;--fg: #e8f4ff;--dim: #6f8499;--line: #15222f;--edge: rgba(34, 211, 238, .28);--accent: #22d3ee;--accent-ink: #001318;--warn: #ffb020;--bad: #ff4d5e;--ok: #3dffa0;--glow: 0 0 14px rgba(34, 211, 238, .45);--display: "Orbitron", "Eurostile", "Bahnschrift", "Segoe UI", system-ui, sans-serif;--num: "Rajdhani", "Bahnschrift", "Arial Narrow", system-ui, sans-serif;--label: "Rajdhani", "Bahnschrift", "Arial Narrow", system-ui, sans-serif;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);font:500 16px/1.4 var(--label);overscroll-behavior:none}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(120% 60% at 50% 0%,rgba(34,211,238,.1),transparent 60%),linear-gradient(rgba(34,211,238,.035) 1px,transparent 1px) 0 0 / 100% 28px,linear-gradient(90deg,rgba(34,211,238,.035) 1px,transparent 1px) 0 0 / 28px 100%}.app{position:relative;z-index:1;display:flex;flex-direction:column;height:100%;padding-top:env(safe-area-inset-top);max-width:560px;margin:0 auto}.top{display:flex;justify-content:space-between;align-items:center;padding:12px 20px 4px}.brand{font:700 13px var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);text-shadow:var(--glow)}.cap{font:600 12px var(--label);letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}.main{flex:1;overflow-y:auto;padding:12px 18px 20px;animation:in .28s ease-out}@keyframes in{0%{opacity:0;transform:translateY(8px)}}.tabs{display:flex;margin:0 10px calc(8px + env(safe-area-inset-bottom));padding:6px;background:#0a111ad9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--edge);border-radius:20px}.tabs button{flex:1;display:grid;justify-items:center;gap:2px;background:none;border:0;color:var(--dim);font:600 11px var(--label);letter-spacing:.14em;text-transform:uppercase;padding:8px 0;border-radius:14px;transition:color .2s,background .2s}.tabs button.on{color:var(--accent);background:#22d3ee1a;text-shadow:var(--glow)}.tabs button.on svg{filter:drop-shadow(0 0 5px var(--accent))}h1{display:flex;align-items:center;gap:10px;font:600 12px var(--label);color:var(--dim);text-transform:uppercase;letter-spacing:.22em;margin:28px 0 10px}h1:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--edge),transparent)}h1:first-child{margin-top:0}.dim{color:var(--dim)}.big{font-family:var(--num);font-variant-numeric:tabular-nums;font-weight:700}.row{display:flex;gap:12px;align-items:baseline;justify-content:space-between}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.panel,.stat{position:relative;padding:12px 14px;border-radius:12px;background:linear-gradient(160deg,var(--panel-2),var(--panel));border:1px solid var(--line)}.panel:before,.stat:before,.panel:after,.stat:after{content:"";position:absolute;width:10px;height:10px;border:0 solid var(--accent);opacity:.7;pointer-events:none}.panel:before,.stat:before{top:-1px;left:-1px;border-top-width:2px;border-left-width:2px;border-top-left-radius:12px}.panel:after,.stat:after{right:-1px;bottom:-1px;border-bottom-width:2px;border-right-width:2px;border-bottom-right-radius:12px}.stat .l{font:600 11px var(--label);letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}.stat .v{margin-top:2px;white-space:nowrap;font:700 26px var(--num);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.stat .v small,.fuel-foot small{font:600 11px var(--label);letter-spacing:.12em;color:var(--dim);margin-left:4px;text-transform:uppercase}.warn{color:var(--warn);text-shadow:0 0 10px rgba(255,176,32,.5)}.ride{display:flex;flex-direction:column;gap:12px;min-height:100%}.telltales{display:flex;justify-content:space-between;gap:6px;padding:6px 4px 0}.tell{display:flex;align-items:center;gap:6px;font:700 11px var(--label);letter-spacing:.18em;color:#31465a}.tell i{width:9px;height:9px;border-radius:50%;background:currentColor}.tell.ok{color:var(--ok)}.tell.ok i{box-shadow:0 0 8px var(--ok)}.tell.warn{color:var(--warn)}.tell.warn i{box-shadow:0 0 8px var(--warn)}.tell.bad{color:var(--bad)}.tell.bad i{box-shadow:0 0 8px var(--bad)}.tell.blink{color:var(--warn)}.tell.blink i{box-shadow:0 0 8px currentColor;animation:blink 1s steps(2,jump-none) infinite}.tell.rec{color:var(--bad)}.tell.rec i{box-shadow:0 0 8px var(--bad);animation:blink 1s steps(2,jump-none) infinite}@keyframes blink{50%{opacity:.15}}.bad-note{color:var(--bad);text-align:center}.cluster{position:relative}.dial{width:100%;max-width:460px;display:block;margin:0 auto;overflow:visible}.dial circle{fill:none;stroke-linecap:round;stroke-width:9}.dial-track{stroke:#0f1c29}.dial-arc{stroke:var(--c);transition:stroke-dasharray .35s cubic-bezier(.2,.8,.2,1),stroke .35s;filter:drop-shadow(0 0 7px var(--c))}.tick{stroke:#1d3043;stroke-width:1.5;transition:stroke .2s}.tick.major{stroke:#35506a;stroke-width:2.5}.tick.lit{stroke:var(--c);filter:drop-shadow(0 0 3px var(--c))}.tick.red:not(.lit){stroke:#4a1f27}.tick-num{font:600 11px var(--label);fill:var(--dim);letter-spacing:.05em}.tip{transform-origin:150px 150px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.tip polygon{fill:var(--c);filter:drop-shadow(0 0 6px var(--c))}.dial-speed{font:700 104px var(--num);fill:var(--fg);font-variant-numeric:tabular-nums;filter:drop-shadow(0 0 5px var(--c))}.dial-unit{font:700 14px var(--label);letter-spacing:.5em;fill:var(--c)}.dial-max{font:600 11px var(--label);letter-spacing:.25em;fill:var(--dim)}.cluster-odo{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:-4px}.odo{display:flex;gap:3px;align-items:center}.odo b{font:700 22px var(--num);background:linear-gradient(#050a10,#0d1823 50%,#050a10);border:1px solid var(--line);border-radius:4px;padding:3px 5px;color:var(--fg);font-variant-numeric:tabular-nums}.odo span{font:600 11px var(--label);letter-spacing:.2em;color:var(--dim);margin-left:4px}.fuel .fuel-foot{margin-top:8px}.fuel-foot b{font:700 24px var(--num);font-variant-numeric:tabular-nums}.fuelbar{display:grid;grid-template-columns:repeat(20,1fr);gap:3px;height:18px;margin-top:10px}.fuelbar i{border-radius:2px;background:#0f1c29;transform:skew(-18deg);transition:background .3s,box-shadow .3s}.fuelbar i.on{background:var(--accent);box-shadow:0 0 8px #22d3ee99}.fuelbar.low i.on{background:var(--bad);box-shadow:0 0 8px #ff4d5eb3}.trip-grid{grid-template-columns:1.3fr 1fr 1fr}.trip-grid .v{font-size:21px}.trip-grid .hero .v{font-size:32px;color:var(--accent);text-shadow:var(--glow)}.controls{margin-top:auto;padding-top:12px;display:flex;gap:12px}.dock{position:sticky;bottom:-20px;margin:auto -18px -20px;padding:14px 18px 18px;background:linear-gradient(transparent,var(--bg) 40%)}.gps{text-align:center;font-size:12px;color:var(--dim)}.rings{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rings .panel{padding:12px 8px 10px;text-align:center}.ring{width:100%;max-width:150px;display:block;margin:0 auto}.ring circle{fill:none;stroke-width:9;stroke-linecap:round}.ring-track{stroke:#0f1c29}.ring-arc{stroke:var(--accent);filter:drop-shadow(0 0 6px var(--accent));transition:stroke-dasharray .5s cubic-bezier(.2,.8,.2,1)}.ring.low .ring-arc{stroke:var(--bad);filter:drop-shadow(0 0 6px var(--bad))}.ring-val{font:700 34px var(--num);fill:var(--fg);font-variant-numeric:tabular-nums}.ring-unit{font:600 11px var(--label);letter-spacing:.16em;fill:var(--dim);text-transform:uppercase}.ring-cap{margin-top:-6px}.strips{display:grid;gap:8px;margin-top:10px}.strip{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:12px;background:linear-gradient(90deg,rgba(34,211,238,.08),transparent 70%),var(--panel);border:1px solid var(--line)}.strip .sv{font:700 24px var(--num);font-variant-numeric:tabular-nums}.page-head{align-items:center;margin-bottom:6px}button.link.accent-link{color:var(--accent);font-size:14px;letter-spacing:.14em;text-shadow:var(--glow)}button.link.back{color:var(--accent);margin-bottom:8px;padding:0}button.btn,.btn{flex:1;font:700 15px var(--label);letter-spacing:.2em;text-transform:uppercase;border:1px solid transparent;border-radius:14px;padding:15px;background:var(--fg);color:#000;transition:transform .12s,box-shadow .2s,filter .2s}button.btn:active{transform:scale(.97)}button.btn.ghost{background:#22d3ee0a;color:var(--fg);border-color:var(--edge)}button.btn.accent{background:linear-gradient(180deg,#5eeaff,var(--accent));color:var(--accent-ink);box-shadow:0 0 22px #22d3ee66,inset 0 1px #ffffff80}button.btn.danger{background:#ff4d5e0f;color:var(--bad);border-color:#ff4d5e66}button.btn.sm{flex:none;padding:7px 14px;font-size:12px;border-radius:10px}button.link{background:none;border:0;color:var(--dim);font:600 13px var(--label);letter-spacing:.1em;text-transform:uppercase;padding:6px 0}button.link.bad{color:var(--bad)}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}form{display:grid;gap:14px;margin:14px 0 22px}label{display:grid;gap:5px;font:600 11px var(--label);letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}input,select{font:500 17px var(--label);color:var(--fg);background:#060d15;border:1px solid #16283a;border-radius:10px;padding:12px;width:100%;min-width:0;letter-spacing:normal;text-transform:none}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #22d3ee26}input[type=checkbox]{width:20px;height:20px;padding:0;accent-color:var(--accent)}.check{display:flex;align-items:center;gap:10px;color:var(--fg);font-size:15px;letter-spacing:.08em}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.note{font-size:14px;color:var(--dim)}.list>*{padding:12px 0;border-bottom:1px solid var(--line)}.list>*:last-child{border-bottom:0}.item .t{font:700 17px var(--label);letter-spacing:.03em}.item .s{font-size:14px;color:var(--dim)}.bar{height:5px;background:#0f1c29;border-radius:3px;margin-top:8px;overflow:hidden}.bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#7af0ff);box-shadow:0 0 8px var(--accent)}.bar.over>i{background:var(--bad);box-shadow:0 0 8px var(--bad)}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.chip{background:none;border:1px solid var(--edge);color:var(--dim);font:700 13px var(--label);letter-spacing:.14em;text-transform:uppercase;border-radius:99px;padding:6px 16px}.chip.on{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);box-shadow:var(--glow)}svg.chart{width:100%;height:auto;display:block;filter:drop-shadow(0 0 5px rgba(34,211,238,.5))}.empty{color:var(--dim);text-align:center;padding:40px 0;letter-spacing:.06em}@media (min-width: 560px){.main{padding-inline:28px}}@media (max-height: 700px){.dial{max-width:320px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
