:root{--bg:#121418;--panel:#181b21eb;--line:#2e333c;--text:#e4e7ec;--muted:#9aa1ad;--accent:#ffb020;--warn:#ff7a59;--weapon:#e0453a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scrollbar-color:#3a3f4a #181b20}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);margin:0;font:13px/1.4 system-ui,sans-serif;overflow:hidden}header{border-bottom:1px solid var(--line);background:#171a1f;align-items:center;gap:12px;height:40px;padding:0 12px;display:flex}.logo{color:var(--accent);font-size:16px}.poc{color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:1px 6px;font-size:11px}nav{gap:4px;margin-left:12px;display:flex}#status{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-left:auto;overflow:hidden}button,select,input,textarea{font:inherit;color:var(--text);border:1px solid var(--line);background:#232730;border-radius:5px;padding:4px 8px}button{cursor:pointer}button:hover{border-color:#4a5160}button.primary{border-color:var(--accent);background:#5a4310}.tab.active{background:#3a3f4a;border-color:#5a6170}main{position:absolute;inset:40px 0 0}.page{display:none;position:absolute;inset:0}.page.active{display:block}#arena-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px 12px}.panel h3{color:var(--accent);margin:12px 0 6px;font-size:13px}.panel h3:first-child{margin-top:0}.panel label{color:var(--muted);flex-direction:column;gap:2px;margin:6px 0;display:flex}.panel label.check{flex-direction:row;align-items:center;gap:6px}#setup{width:330px;max-height:calc(100% - 24px);position:absolute;top:12px;left:12px;overflow:auto}#setup.hidden{display:none}#setup .primary{width:100%;margin:8px 0;padding:8px}.file input{color:var(--muted)}.keys{border-collapse:collapse;width:100%;font-size:12px}.keys td,.keys th{border-bottom:1px solid var(--line);text-align:left;padding:2px 4px}.hint{color:var(--muted);font-size:12px}#hud{pointer-events:none;justify-content:space-between;gap:12px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.bot{background:var(--panel);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:8px;min-width:260px;padding:8px 12px}.bot h4{margin:0 0 4px;font-size:14px}.bot .p1{color:#ffb020}.bot .p2{color:#58b6ff}.bot .row{justify-content:space-between;gap:12px;display:flex}.bot .bad{color:var(--warn);font-weight:700}#perf{background:var(--panel);border:1px solid var(--line);font-variant-numeric:tabular-nums;white-space:pre;border-radius:8px;padding:6px 10px;font-size:12px;position:absolute;top:12px;right:12px}#pads{color:var(--muted);background:var(--panel);border-radius:6px;padding:4px 10px;font-size:12px;position:absolute;top:12px;left:50%;transform:translate(-50%)}#pads:empty{display:none}#paused{text-align:center;color:var(--accent);text-shadow:0 2px 8px #000;pointer-events:none;font-size:42px;font-weight:700;position:absolute;top:40%;left:0;right:0}#workshop.active{display:flex}.ws-side{border-width:0 1px 0 0;border-radius:0;flex:none;width:440px;overflow:auto}#ws-view{flex:1;position:relative}#ws-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}#ws-view .drop-hint{color:#0000;pointer-events:none;border:2px dashed #0000;border-radius:12px;justify-content:center;align-items:center;font-size:20px;display:flex;position:absolute;inset:20px}#ws-view.drag .drop-hint{border-color:var(--accent);color:var(--accent);background:#ffb0200f}.inline{flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0;display:flex}.inline label{margin:0}.grid2,.grid3{gap:4px 8px;display:grid}.grid2{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:1fr 1fr 1fr}.grid2 label,.grid3 label{margin:2px 0}.grid3 input{width:100%}.parts{border:1px solid var(--line);background:#181b20;border-radius:6px;height:240px;overflow:auto}.parts .row{cursor:pointer;border-bottom:1px solid #20242b;align-items:center;gap:6px;padding:2px 6px;display:flex}.parts .row:hover{background:#20242b}.parts .row.sel{background:#4a3a10}.parts .nm{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.parts .g{color:var(--muted);font-variant-numeric:tabular-nums}.parts .empty{color:var(--muted);padding:12px}.tag{text-align:center;background:#333842;border-radius:4px;min-width:54px;padding:0 5px;font-size:11px}.t-weapon{background:#7a2620!important}.t-wheel1{background:#1d4f8f!important}.t-wheel2{background:#1d6f8f!important}.t-wheel3{background:#3f3590!important}.t-wheel4{background:#1f7a62!important}.t-wheel5{background:#4b5c99!important}.t-wheel6{background:#146271!important}.t-ignore{color:#666;background:#222!important}.report{margin-top:6px;font-size:12px}.report div{padding:1px 0}.warn{color:var(--warn)}[hidden]{display:none!important}#busy{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0b0e99;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.busy-box{border:1px solid var(--line);text-align:center;background:#1c1f25;border-radius:10px;width:min(420px,100% - 32px);padding:20px;box-shadow:0 8px 32px #0008}.spinner{border:4px solid #3a3f4a;border-top-color:var(--accent);border-radius:50%;width:36px;height:36px;margin:0 auto 12px;animation:.8s linear infinite spin}.busy-title{margin-bottom:10px;font-size:14px}.bar{background:#2a2e36;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.bar .fill{background:var(--accent);width:0;height:100%;transition:width .15s}.bar.indeterminate .fill{width:35%;animation:1.2s ease-in-out infinite slide}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(290%)}}.calc{color:var(--muted);font-variant-numeric:tabular-nums;margin:4px 0 2px;font-size:12px}.calc b{color:var(--text);font-weight:600}.sel-edit{border:1px solid var(--line);background:#1a1d22;border-radius:6px;margin:6px 0;padding:6px 8px}.sel-edit input[type=number]{width:96px}.parts .g.custom{color:var(--accent)}.danger{border-color:#7a3a30}.danger:hover{border-color:var(--warn);background:#4a1f1a}.robot-row{align-items:flex-end;gap:6px;display:flex}.robot-row label{flex:1}#gallery{overflow:auto}.gal-wrap{max-width:1100px;margin:0 auto;padding:16px}.gal-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.gal-head h2{color:var(--accent);margin:0 auto 0 0;font-size:18px}.gal-head input{width:260px;max-width:100%}.gal-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-bottom:16px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:6px;padding:12px;display:flex}.card h4{margin:0;font-size:15px}.card .by{color:var(--muted);font-size:12px}.card .desc{white-space:pre-wrap;overflow-wrap:anywhere;flex:1;font-size:12px}.card .facts{flex-wrap:wrap;gap:4px;display:flex}.card .facts span{background:#2a2e36;border-radius:4px;padding:1px 6px;font-size:11px}.card .acts{gap:6px;display:flex}.card .acts button:first-child{flex:1}.gal-share ol{margin:8px 0;padding-left:20px}.gal-share li{margin:4px 0}a{color:var(--accent)}.touch-only{display:none!important}body.touch .touch-only{display:flex!important}#touch{pointer-events:none;z-index:5;-webkit-user-select:none;user-select:none;position:absolute;inset:0}#touch .stick{pointer-events:auto;touch-action:none;width:50%;height:62%;position:absolute;bottom:0}#touch .stick[data-side=l]{left:0}#touch .stick[data-side=r]{right:0}body.one-stick #touch .stick[data-side=r]{display:none}#touch .base,#touch .knob{transform-origin:50%;pointer-events:none;border-radius:50%;position:absolute}#touch .base{background:#ffffff0d;border:2px solid #ffffff38;width:124px;height:124px;margin:-62px 0 0 -62px}#touch .knob{background:#ffb0208c;width:56px;height:56px;margin:-28px 0 0 -28px}#touch .stick:not(.on) .base,#touch .stick:not(.on) .knob{top:70%!important}#touch .stick[data-side=l]:not(.on) .base,#touch .stick[data-side=l]:not(.on) .knob{left:30%!important}#touch .stick[data-side=r]:not(.on) .base,#touch .stick[data-side=r]:not(.on) .knob{left:70%!important}#touch .stick:not(.on) .knob{opacity:.5;transform:none!important}#touch .lbl{text-align:center;color:#ffffff59;letter-spacing:1px;font-size:10px;position:absolute;bottom:6px;left:0;right:0}#touch .tbtn{pointer-events:auto;touch-action:none;background:#282c34b3;border:2px solid #ffffff40;border-radius:50%;font-size:11px;font-weight:700;position:absolute}#touch .weapon{border-color:var(--weapon);width:84px;height:84px;bottom:58%;right:18px}#touch .weapon.lit{background:#e0453abf}#touch .flip{width:56px;height:56px;font-size:10px;bottom:62%;right:116px}#touch .tbar{pointer-events:auto;gap:4px;display:flex;position:absolute;top:6px;left:50%;transform:translate(-50%)}#touch .tbar button{white-space:nowrap;touch-action:manipulation;background:#232730d9;padding:6px 10px;font-size:12px}body.touch #perf,body.touch #pads{display:none}body.touch #hud{top:50px;bottom:auto}body.touch .bot{min-width:0;padding:4px 8px;font-size:11px}body.touch .bot h4{font-size:12px}body.touch #setup{z-index:6}body.touch button,body.touch select{touch-action:manipulation}@media (max-width:760px){header{gap:6px;padding:0 8px}.poc{display:none}nav{margin-left:0}.tab{padding:4px 6px}#status{font-size:11px}#setup{width:auto;top:8px;left:8px;right:8px}#workshop.active{flex-direction:column}.ws-side{border-width:0 0 1px;width:100%;height:55%;overflow-x:hidden}.grid3{grid-template-columns:1fr 1fr}#ws-view{min-height:45%}.gal-wrap{padding:10px}}@media (orientation:portrait){#touch .tbar button{padding:5px 7px;font-size:11px}body.touch #arena:after{content:"Turn your phone sideways for room to drive";z-index:6;background:var(--panel);border:1px solid var(--line);color:var(--muted);pointer-events:none;text-align:center;border-radius:6px;width:130px;padding:6px 10px;font-size:11px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}body.touch #hud{flex-direction:column;align-items:flex-start}}
