:root { --bg:#0d0d0d; --panel:#171717; --text:#f5f5f5; --muted:#b7b7b7; --accent:#ff7a00; --danger:#d63031; --border:#2a2a2a; }
* { box-sizing:border-box }
body { margin:0; font-family:Arial,sans-serif; background:var(--bg); color:var(--text) }
.app { max-width:1000px; margin:0 auto; padding:16px; display:grid; gap:12px }
.card { background:var(--panel); border:1px solid var(--border); border-radius:12px; padding:14px }
input,select,button { width:100%; min-height:42px; border-radius:8px; border:1px solid var(--border); background:#101010; color:var(--text); padding:8px 10px }
button { cursor:pointer; background:var(--accent); border:none; font-weight:700 }
.secondary { background:#2c2c2c }
.danger { background:var(--danger) }
.stack,.grid,.schedule,.controls-form { display:grid; gap:10px }
.row { display:grid; gap:6px }
.topbar { display:flex; justify-content:space-between; align-items:center; gap:12px }
.item { border:1px solid var(--border); border-radius:10px; padding:10px; display:grid; gap:8px; background:#111 }
.error { border-color:var(--danger) }
@media (min-width:768px) { .controls-form { grid-template-columns:repeat(4,minmax(0,1fr)); align-items:end } .grid { grid-template-columns:repeat(2,minmax(0,1fr)) } .item { grid-template-columns:1fr auto; align-items:center } }
