:root {
  --bg:#0a0a0c; --panel:#141416; --panel2:#0e0e10;
  --amber:#e8d5a0; --amber-dim:#8a7a52; --gold:#d8b26a;
  --red:#ff3b30; --green:#5a8a3a; --line:#2a2a2e;
  --mono:'Share Tech Mono', monospace; --disp:'Bricolage Grotesque', sans-serif;
}
* { box-sizing:border-box; }
html,body { margin:0; padding:0; background:var(--bg); }
body {
  font-family:var(--disp); color:var(--amber);
  background:
    radial-gradient(circle at 20% 0%, #1a1613 0%, transparent 45%),
    radial-gradient(circle at 80% 100%, #14100c 0%, transparent 45%),
    repeating-linear-gradient(0deg, #0a0a0c, #0a0a0c 2px, #0c0c0e 2px, #0c0c0e 4px),
    var(--bg);
  min-height:100vh; -webkit-user-select:none; user-select:none;
}
.aas-root { max-width:1400px; margin:0 auto; padding:14px; }
.aas-root.vibrate { animation:vib 0.06s linear infinite; }
@keyframes vib { 0%{transform:translate(0,0);}25%{transform:translate(0.5px,-0.5px);}50%{transform:translate(-0.5px,0.5px);}75%{transform:translate(0.5px,0.5px);}100%{transform:translate(0,0);} }

/* HEADER */
.aas-header {
  display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap;
  border:1px solid var(--line); border-radius:10px; padding:12px 18px; margin-bottom:14px;
  background:linear-gradient(180deg,#1b1b1f,#0e0e10);
  box-shadow:inset 0 1px 0 #333, 0 4px 20px rgba(0,0,0,0.5);
}
.aas-logo {
  font-weight:800; font-size:38px; letter-spacing:-2px; color:var(--red);
  text-shadow:0 0 12px rgba(255,59,48,0.5); line-height:0.9;
  border-right:2px solid var(--line); padding-right:16px;
}
.aas-title { font-weight:800; font-size:17px; letter-spacing:1px; color:var(--amber); }
.aas-sub { font-family:var(--mono); font-size:11px; color:var(--amber-dim); margin-top:2px; }
.status-led {
  font-family:var(--mono); font-size:13px; padding:8px 16px; border-radius:6px;
  border:1px solid var(--line); background:#000; min-width:180px; text-align:center;
}
.status-led.off { color:var(--amber-dim); }
.status-led.crank { color:#ffb84d; border-color:#ffb84d; animation:blink 0.4s steps(2) infinite; }
.status-led.run { color:var(--green); border-color:var(--green); box-shadow:0 0 12px rgba(90,138,58,0.4); }
@keyframes blink { 50%{opacity:0.4;} }

/* GRID */
.aas-grid { display:grid; grid-template-columns:1fr 1.3fr 1fr; gap:14px; }
@media(max-width:900px){ .aas-grid{ grid-template-columns:1fr; } }

.aas-panel {
  border:1px solid var(--line); border-radius:10px; padding:14px;
  background:linear-gradient(180deg,var(--panel),var(--panel2));
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.05), 0 6px 18px rgba(0,0,0,0.4);
}
.center-panel { border-color:#3a3025; }
.panel-title {
  font-family:var(--mono); font-size:11px; letter-spacing:2px; color:var(--gold);
  border-bottom:1px dashed var(--line); padding-bottom:8px; margin-bottom:12px;
}

/* BUTTONS */
.big-btn {
  flex:1; font-family:var(--mono); font-size:16px; letter-spacing:2px; font-weight:bold;
  padding:14px 0; border-radius:8px; border:1px solid var(--line); cursor:pointer;
  transition:all 0.1s; background:#1a1a1e; color:var(--amber);
}
.big-btn.start { background:linear-gradient(180deg,#2c4a1e,#1a2e12); color:#a8e070; border-color:#3a5a28; }
.big-btn.start:hover:not(.dim){ box-shadow:0 0 16px rgba(90,138,58,0.6); }
.big-btn.stop { background:linear-gradient(180deg,#4a1e1e,#2e1212); color:#ff8a80; border-color:#5a2828; }
.big-btn.stop:hover { box-shadow:0 0 16px rgba(255,59,48,0.5); }
.big-btn.dim { opacity:0.4; cursor:not-allowed; }
.big-btn:active { transform:translateY(2px); }

.eng-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:5px; }
.eng-btn {
  font-family:var(--mono); font-size:12px; padding:8px 0; border-radius:5px;
  border:1px solid var(--line); background:#161618; color:var(--amber-dim); cursor:pointer; transition:all 0.1s;
}
.eng-btn:hover { color:var(--amber); }
.eng-btn.sel { background:var(--gold); color:#111; border-color:var(--gold); font-weight:bold; box-shadow:0 0 10px rgba(216,178,106,0.5); }

.firing { margin:10px 0; padding:8px 10px; background:#000; border-radius:6px; border:1px solid var(--line); }
.firing-order { font-family:var(--mono); font-size:12px; color:var(--gold); margin-top:3px; }

/* SELECT */
.aas-select {
  width:100%; font-family:var(--mono); font-size:13px; padding:8px 10px; border-radius:6px;
  background:#000; color:var(--amber); border:1px solid var(--line); cursor:pointer;
}
.ctrl-label { font-family:var(--mono); font-size:10px; letter-spacing:1px; color:var(--amber-dim); }
.ctrl-val { font-family:var(--mono); font-size:12px; color:var(--gold); }

/* TACH */
.tach-wrap { max-width:320px; margin:0 auto; }
.gauges { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:12px; }
.gauge-box { background:#000; border:1px solid var(--line); border-radius:6px; padding:8px 10px; }
.gauge-label { font-family:var(--mono); font-size:10px; color:var(--amber-dim); letter-spacing:1px; }
.gauge-val { font-family:var(--mono); font-size:13px; }
.gauge-track { height:8px; background:#161618; border-radius:4px; overflow:hidden; margin-top:4px; border:1px solid #222; }
.gauge-fill { height:100%; transition:width 0.1s linear; }
.overheat {
  margin-top:10px; text-align:center; font-family:var(--mono); font-size:12px; color:var(--red);
  border:1px solid var(--red); border-radius:6px; padding:6px; animation:blink 0.6s steps(2) infinite;
}

/* GEARBOX */
.gearbox { margin-top:14px; }
.gear-row { display:grid; grid-template-columns:repeat(8,1fr); gap:4px; }
.gear-btn {
  font-family:var(--mono); font-size:14px; font-weight:bold; padding:10px 0; border-radius:5px;
  border:1px solid var(--line); background:#161618; color:var(--amber-dim); cursor:pointer;
}
.gear-btn.sel { background:var(--red); color:#fff; border-color:var(--red); box-shadow:0 0 8px rgba(255,59,48,0.5); }

/* SLIDERS / KNOBS */
.knob-box { margin-bottom:6px; }
.aas-slider, .pedal-slider {
  -webkit-appearance:none; appearance:none; width:100%; height:6px; border-radius:3px;
  background:linear-gradient(90deg,#3a3025,#161618); outline:none; cursor:pointer;
}
.aas-slider::-webkit-slider-thumb, .pedal-slider::-webkit-slider-thumb {
  -webkit-appearance:none; width:18px; height:18px; border-radius:50%;
  background:radial-gradient(circle at 35% 35%,#f0dca8,#8a7a52); border:1px solid #000;
  box-shadow:0 0 6px rgba(216,178,106,0.5); cursor:pointer;
}
.aas-slider::-moz-range-thumb { width:18px; height:18px; border-radius:50%; background:#d8b26a; border:1px solid #000; }

/* TOGGLES */
.aas-toggle {
  flex:1; font-family:var(--mono); font-size:12px; padding:9px 6px; border-radius:6px; cursor:pointer;
  border:1px solid var(--line); background:#161618; color:var(--amber-dim);
  display:flex; align-items:center; justify-content:center; gap:6px; transition:all 0.15s;
}
.aas-toggle .tog-dot { width:8px; height:8px; border-radius:50%; background:#444; }
.aas-toggle.on { color:#a8e070; border-color:#3a5a28; background:#182312; }
.aas-toggle.on .tog-dot { background:#a8e070; box-shadow:0 0 6px #a8e070; }

/* PEDAL */
.pedal-zone { margin-top:16px; text-align:center; }
.pedal-info { display:flex; justify-content:space-between; font-family:var(--mono); font-size:11px; color:var(--amber-dim); max-width:300px; margin:0 auto 8px; flex-wrap:wrap; gap:4px; }
.pedal-info .hint { color:var(--gold); }
.accelerator {
  width:180px; height:120px; margin:0 auto; cursor:pointer;
  display:flex; align-items:flex-end; justify-content:center;
}
.accelerator.disabled { opacity:0.4; cursor:not-allowed; }
.pedal-face {
  width:120px; height:100px; border-radius:10px 10px 6px 6px;
  background:linear-gradient(180deg,#3a3a3e,#18181a);
  border:2px solid #000; box-shadow:0 8px 20px rgba(0,0,0,0.6), inset 0 2px 0 #555;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  transition:transform 0.08s; transform-origin:bottom;
}
.pedal-grip { display:flex; flex-direction:column; gap:5px; }
.pedal-grip span { width:60px; height:4px; background:#000; border-radius:2px; box-shadow:0 1px 0 #444; }
.pedal-label { font-family:var(--mono); font-size:9px; color:var(--amber-dim); margin-top:8px; letter-spacing:2px; }
.pedal-slider { max-width:300px; margin:12px auto 0; display:block; }

/* PRESETS */
.preset-bar { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-top:16px;
  border-top:1px dashed var(--line); padding-top:14px; }
.preset-input { flex:1; min-width:180px; font-family:var(--mono); font-size:13px; padding:9px 12px;
  background:#000; color:var(--amber); border:1px solid var(--line); border-radius:6px; }
.preset-btn { font-family:var(--mono); font-size:12px; padding:9px 14px; border-radius:6px; cursor:pointer;
  background:var(--gold); color:#111; border:1px solid var(--gold); font-weight:bold; }
.preset-btn.ghost { background:#161618; color:var(--amber); }
.preset-msg { font-family:var(--mono); font-size:11px; color:var(--green); }

/* FOOTER */
.aas-footer { margin-top:18px; padding:14px; text-align:center; font-family:var(--mono); font-size:11px;
  color:var(--amber-dim); border-top:1px solid var(--line); }
.aas-footer a { color:var(--gold); text-decoration:none; border-bottom:1px dotted var(--gold); }
.aas-footer a:hover { color:var(--amber); }
.warranty { display:inline-block; margin-bottom:8px; font-size:10px; letter-spacing:2px; color:var(--red);
  border:1px solid var(--red); border-radius:4px; padding:4px 10px; cursor:pointer; transform:rotate(-2deg); opacity:0.7; }
.warranty:hover { opacity:1; }
#auth-status { position:fixed; top:4px; right:8px; font-family:var(--mono); font-size:10px; color:var(--amber-dim); z-index:50; }
</parameter>
</styles.css>