:root{color-scheme:dark;--bg: #070b10;--panel: #0e151d;--panel-2: #121b25;--border: rgba(255, 255, 255, .08);--text: #e8eef5;--muted: #8b9aab;--mint: #56f0c8;--mint-dim: rgba(86, 240, 200, .14);--danger: #ff6b7a;--warn: #ffc857;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(1200px 600px at 20% -10%,#122033 0%,var(--bg) 55%);color:var(--text)}body{min-height:100vh}#app{max-width:1280px;margin:0 auto;padding:20px 16px 40px}.top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:16px}.top h1{margin:0;font-size:1.35rem;letter-spacing:.02em}.top p{margin:4px 0 0;color:var(--muted);font-size:.9rem}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--panel);color:var(--muted);font-size:.78rem}.badge strong{color:var(--mint);font-weight:600}.layout{display:grid;grid-template-columns:minmax(280px,360px) 1fr;gap:16px;align-items:start}@media(max-width:900px){.layout{grid-template-columns:1fr}.stage-wrap{position:static}}.panel{background:linear-gradient(180deg,var(--panel) 0%,var(--panel-2) 100%);border:1px solid var(--border);border-radius:16px;padding:14px}.panel h2{margin:12px 0 10px;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.panel h2:first-child{margin-top:0}.stack{display:flex;flex-direction:column;gap:10px}label.field{display:flex;flex-direction:column;gap:6px;font-size:.8rem;color:var(--muted)}label.field.check{flex-direction:row;align-items:center;gap:8px}input[type=text],input[type=search],select{width:100%;border-radius:10px;border:1px solid var(--border);background:#00000073;color:var(--text);padding:10px 12px;font:inherit;color-scheme:dark}select option,select optgroup{background-color:#0e151d;color:#e8eef5}select:focus{outline:1px solid rgba(86,240,200,.45);border-color:#56f0c866}select:disabled,select option:disabled{color:#8b9aab;background-color:#0e151d}input[type=file]{width:100%;font-size:.82rem;color:var(--muted)}input[type=range]{width:100%;accent-color:var(--mint)}.row{display:flex;flex-wrap:wrap;gap:8px}button,.btn{appearance:none;border:1px solid var(--border);background:#ffffff0a;color:var(--text);border-radius:10px;padding:10px 12px;font:inherit;font-size:.9rem;cursor:pointer}button:hover:not(:disabled){border-color:#56f0c859;background:var(--mint-dim)}button.primary{background:linear-gradient(180deg,#56f0c847,#56f0c81f);border-color:#56f0c873;color:#d8fff4;font-weight:600}button.danger{border-color:#ff6b7a73;color:#ffd0d5}button:disabled{opacity:.45;cursor:not-allowed}.track-list{list-style:none;margin:0;padding:0;max-height:220px;overflow:auto;border:1px solid var(--border);border-radius:12px}.track-list li button{width:100%;text-align:left;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;padding:10px 12px}.track-list li:last-child button{border-bottom:0}.track-list .t{display:block;color:var(--text);font-size:.9rem}.track-list .a{display:block;color:var(--muted);font-size:.75rem;margin-top:2px}.stage-wrap{position:sticky;top:16px;align-self:start}.stage{position:relative;width:100%;aspect-ratio:var(--stage-ar, 16 / 9);max-height:min(70vh,720px);margin-inline:auto;border-radius:16px;overflow:hidden;border:1px solid var(--border);background:#05080c}.stage canvas{width:100%;height:100%;display:block;object-fit:contain}.meta{margin-top:10px;display:flex;flex-wrap:wrap;gap:10px 16px;color:var(--muted);font-size:.85rem}.meta strong{color:var(--text);font-weight:600}.rec-meta{color:#ff8a96}.rec-meta.hidden{display:none}.progress{margin-top:10px;height:8px;border-radius:999px;background:#ffffff14;overflow:hidden}.progress>span{display:block;height:100%;width:0%;background:linear-gradient(90deg,#2bb894,var(--mint));transition:width .12s linear}.status{margin-top:10px;min-height:1.3em;color:var(--muted);font-size:.88rem}.status.error{color:var(--danger)}.status.warn{color:var(--warn)}.hint{margin:8px 0 0;color:var(--muted);font-size:.78rem;line-height:1.4}.hotkeys{opacity:.85}
