:root{color-scheme:dark;--bg:#111418;--panel:#1a1f26;--line:#2a313b;--accent:#e8b64c;--text:#e6e9ee;--muted:#8a94a3}*{box-sizing:border-box}body{margin:0;font:14px/1.4 system-ui,sans-serif;background:var(--bg);color:var(--text)}.center{min-height:100vh;display:grid;place-items:center}.muted{color:var(--muted)}.error{color:#ff6b6b}button{background:var(--accent);color:#111;border:0;border-radius:6px;padding:8px 12px;font-weight:600;cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}button.ghost{background:transparent;color:var(--text);border:1px solid var(--line)}input{background:#0d1116;border:1px solid var(--line);color:var(--text);border-radius:6px;padding:8px}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px}.login{display:flex;flex-direction:column;gap:12px;width:320px}.login label{display:flex;flex-direction:column;gap:4px}.app{height:100vh;display:flex;flex-direction:column}header{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--line)}header .ghost{margin-left:auto}.layout{flex:1;display:grid;grid-template-columns:200px 1fr 300px;overflow:hidden}.sidebar,.params{background:var(--panel);overflow:auto;padding:12px}.sidebar{border-right:1px solid var(--line)}.params{border-left:1px solid var(--line)}.configs{list-style:none;margin:0 0 12px;padding:0}.configs li{padding:6px 8px;border-radius:6px;cursor:pointer}.configs li:hover{background:#0d1116}.configs li.active{background:#0d1116;outline:1px solid var(--accent)}.stage{display:flex;flex-direction:column;padding:16px;gap:12px;overflow:auto}.compare{display:grid;grid-template-columns:1fr 1fr;gap:12px;flex:1;min-height:0}figure{margin:0;background:#0d1116;border:1px solid var(--line);border-radius:8px;display:flex;flex-direction:column;overflow:hidden}figcaption{padding:6px 10px;border-bottom:1px solid var(--line);color:var(--muted)}figure img{flex:1;object-fit:contain;min-height:0;background:#000}.drop{flex:1;display:grid;place-items:center;color:var(--muted)}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.upload{background:var(--accent);color:#111;border-radius:6px;padding:8px 12px;font-weight:600;cursor:pointer}.nameInput{flex:1;min-width:120px}.status{color:var(--muted);min-height:18px}.group{border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:8px}.group h4{margin:8px 0 4px}.param{margin-bottom:6px}.param label{display:flex;justify-content:space-between;color:var(--muted)}.param .val{color:var(--text)}.param input[type=range]{width:100%}.tabs{display:flex;gap:6px}.tab{background:transparent;color:var(--muted);border:1px solid var(--line);padding:6px 12px}.tab.on{color:#111;background:var(--accent);border-color:var(--accent)}select{background:#0d1116;border:1px solid var(--line);color:var(--text);border-radius:6px;padding:8px}.catalogForm{display:flex;flex-direction:column;gap:12px;max-width:640px}.catalogForm label{display:flex;flex-direction:column;gap:4px;color:var(--muted)}.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.check{flex-direction:row!important;align-items:center;gap:8px;color:var(--text)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{background:transparent;color:var(--muted);border:1px solid var(--line);padding:4px 10px;border-radius:14px;font-size:12px;text-transform:capitalize}.chip.on{color:#111;background:var(--accent);border-color:var(--accent)}button.danger{background:#3a1418;color:#ff8a8a;border:1px solid #5a2a2a}button.danger:hover{background:#4a1a20}
