:root{--bg:#101218;--panel:#181b23;--panel-hi:#1e222c;--well:#0c0e13;--ink:#ece9e1;--ink-dim:#7e8493;--ink-faint:#565b68;--brass:#d4a14e;--brass-bright:#f3cd83;--ice:#8fd3ff;--danger:#c8654f;--line:#ffffff12;--line-brass:#d4a14e38;--r:7px;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--display:"Space Grotesk", system-ui, sans-serif;--body:system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--body);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}.eyebrow{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);align-items:baseline;gap:8px;margin:0 0 12px;font-size:11px;font-weight:600;display:flex}.eyebrow .count{font-family:var(--mono);letter-spacing:0;color:var(--brass);font-size:11px}.app{flex-direction:column;height:100vh;display:flex}.topbar{background:var(--panel);border-bottom:1px solid var(--line-brass);flex:none;justify-content:space-between;align-items:center;gap:24px;height:56px;padding:0 20px;display:flex}.brand{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:17px;font-weight:700;display:flex}.brand .gem{background:linear-gradient(135deg, var(--brass-bright), var(--brass));border-radius:2px;width:13px;height:13px;transform:rotate(45deg);box-shadow:0 0 10px #d4a14e80}.brand .dim{color:var(--ink-dim);font-weight:500}.app-version{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.06em;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:10px;position:fixed;bottom:6px;right:10px}.workspace{flex:1;min-height:0;display:flex}.panel{background:var(--panel);flex:none;padding:20px 18px;overflow:auto}.panel-left{border-right:1px solid var(--line);width:288px}.panel-right{border-left:1px solid var(--line);width:340px}.stage{background:var(--well);flex:1;min-width:0}.section{margin-bottom:28px}.section:last-child{margin-bottom:0}.toolbar{align-items:flex-end;gap:14px;display:flex}.field{flex-direction:column;gap:5px;display:flex}.field>.eyebrow{letter-spacing:.14em;margin:0;font-size:9.5px}.field-actions{gap:8px;display:flex}.control{font-family:var(--body);color:var(--ink);background:var(--well);border:1px solid var(--line);border-radius:var(--r);outline:none;padding:7px 10px;font-size:13px;transition:border-color .15s,box-shadow .15s}.control:focus-visible,.control:hover{border-color:var(--line-brass)}.control:focus-visible{box-shadow:0 0 0 3px #d4a14e1f}select.control{cursor:pointer;text-transform:capitalize}select.control option{background:var(--panel);color:var(--ink)}.btn{font-family:var(--body);color:var(--ink);background:var(--panel-hi);border:1px solid var(--line);border-radius:var(--r);cursor:pointer;padding:7px 14px;font-size:13px;font-weight:500;transition:border-color .15s,background .15s,color .15s}.btn:hover{border-color:var(--line-brass);background:#232733}.btn-brass{color:var(--brass-bright);border-color:var(--line-brass);background:#d4a14e12}.btn-brass:hover{border-color:var(--brass);background:#d4a14e26}.btn-block{width:100%}.readout-row{justify-content:space-between;align-items:baseline;margin:4px 0;display:flex}.readout-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim);font-size:10px}.readout-value{font-family:var(--mono);color:var(--brass-bright);font-size:13px}.staging-bar{border:1px solid var(--line-brass);border-radius:var(--r);background:#d4a14e14;justify-content:space-between;align-items:center;margin-bottom:8px;padding:8px 10px;display:flex}.staging-label{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-bright);font-size:10px}.staging-actions{gap:6px;display:flex}.tier-tabs{border-radius:var(--r);border:1px solid var(--line);margin-bottom:8px;display:flex;overflow:hidden}.tier-tab{color:var(--ink-dim);font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;flex:1;padding:6px 0;font-size:10px;transition:background .15s,color .15s}.tier-tab+.tier-tab{border-left:1px solid var(--line)}.tier-tab:hover{color:var(--ink);background:#232733}.tier-tab.active{color:var(--brass-bright);background:#d4a14e1f}.gear{margin:0 auto;display:block}.gear .tick{cursor:pointer;transition:stroke .12s,stroke-width .12s}.gear .tick-hit{stroke:#0000;stroke-width:9px}.gear .hub-label{font-family:var(--display);letter-spacing:.2em;fill:var(--ink-faint);font-size:8px}.gear .hub-value{font-family:var(--mono);fill:var(--brass-bright);font-size:30px;font-weight:600}.readout{font-family:var(--mono);color:var(--ink);font-size:38px;font-weight:500;line-height:1}.readout .unit{color:var(--ink-dim);margin-left:3px;font-size:18px}.row{align-items:center;gap:12px;margin-top:14px;display:flex}.row .control{text-align:right;width:70px;font-family:var(--mono)}input[type=range]{appearance:none;background:linear-gradient(90deg, var(--brass) 0%, var(--brass) var(--fill,50%), var(--line) var(--fill,50%));cursor:pointer;border-radius:2px;outline:none;flex:1;height:4px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--brass-bright);border:2px solid var(--bg);border-radius:50%;width:16px;height:16px;box-shadow:0 0 8px #d4a14e80}input[type=range]::-moz-range-thumb{background:var(--brass-bright);border:2px solid var(--bg);border-radius:50%;width:14px;height:14px}.stepper{align-items:stretch;gap:0;width:max-content;display:flex}.stepper button{width:34px;color:var(--ink);background:var(--panel-hi);border:1px solid var(--line);cursor:pointer;font-size:18px;line-height:1;transition:background .15s,color .15s}.stepper button:hover{color:var(--brass-bright);background:#232733}.stepper button:first-child{border-radius:var(--r) 0 0 var(--r)}.stepper button:last-child{border-radius:0 var(--r) var(--r) 0}.stepper .value{font-family:var(--mono);background:var(--well);border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:center;align-items:center;min-width:64px;padding:0 8px;font-size:15px;display:flex}.stepper .value b{color:var(--brass-bright);font-weight:600}.stepper .value span{color:var(--ink-dim);margin-left:4px;font-size:12px}.ftable{border-collapse:collapse;width:100%;margin-top:14px}.ftable th{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);text-align:left;border-bottom:1px solid var(--line);padding:0 8px 8px;font-size:9.5px;font-weight:600}.ftable th.num,.ftable td.num{text-align:right;font-family:var(--mono)}.ftable td{border-bottom:1px solid var(--line);color:var(--ink-dim);padding:7px 8px;font-size:13px}.ftable td.num{color:var(--ink)}.ftable tr{cursor:pointer;transition:background .12s}.ftable tbody tr:hover td{background:#ffffff05}.ftable tr.sel td{color:var(--ink);background:#d4a14e14}.ftable tr.sel td:first-child{box-shadow:inset 2px 0 0 var(--brass)}.ftable select.control{padding:4px 6px;font-size:12px}.ftable input.control{width:58px;font-family:var(--mono);text-align:right;padding:4px 6px}.x-btn{width:24px;height:24px;color:var(--ink-faint);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;font-size:13px;transition:color .15s,border-color .15s,background .15s}.x-btn:hover{color:var(--danger);background:#c8654f14;border-color:#c8654f66}.hint{color:var(--ink-dim);text-align:center;border:1px dashed var(--line);border-radius:var(--r);padding:24px 16px;font-size:13px;line-height:1.6}.hint b{color:var(--ink);font-weight:600}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
