:root{--bg:#03060c;--bg-soft:#070d1a;--panel:rgba(9,16,28,.72);--panel-stroke:rgba(140,180,235,.12);--text-strong:#f0f6ff;--text:#a8c4e6;--text-soft:#6382a5;--measurement:#3fc8e6;--reference:#e09452;--grid:rgba(160,200,255,.05);--grid-strong:rgba(160,200,255,.12);--success:#3ab5a5;--radius-lg:26px;--radius-md:18px;--radius-sm:12px;--shadow-lg:0 24px 80px rgba(0,0,0,.45);--shadow-md:0 14px 42px rgba(0,0,0,.28);--font-ui:"Bahnschrift","Segoe UI Variable Display",sans-serif;--font-mono:"Cascadia Code","JetBrains Mono",monospace}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:radial-gradient(circle at 12% 12%,rgba(40,140,230,.07),transparent 30%),radial-gradient(circle at 88% 16%,rgba(80,190,240,.05),transparent 28%),radial-gradient(circle at 50% 82%,rgba(20,80,180,.07),transparent 30%),linear-gradient(180deg,#020409,#040915 40%,#050d22);color:var(--text-strong);font-family:var(--font-ui);overflow:hidden}button,input,select{font:inherit}.app-shell{display:flex;flex-direction:column;gap:18px;height:100vh;min-height:100vh;overflow:hidden;padding:20px 20px 20px 42px;position:relative;transition:padding-left .25s cubic-bezier(.4,0,.2,1)}.app-shell.cf-open{padding-left:152px}.ambient{border-radius:999px;filter:blur(70px);opacity:.35;pointer-events:none;position:fixed}.ambient-a{background:#288ce61a;height:340px;left:-90px;top:18%;width:340px}.ambient-b{background:#50bef014;height:280px;right:8%;top:8%;width:280px}.ambient-c{background:#1450b414;bottom:-160px;height:420px;left:42%;width:420px}.noise-layer{background-image:linear-gradient(hsla(0,0%,100%,.012) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.012) 1px,transparent 0);background-size:84px 84px;inset:0;-webkit-mask-image:radial-gradient(circle at center,#000 35%,transparent 100%);mask-image:radial-gradient(circle at center,#000 35%,transparent 100%);opacity:.2;pointer-events:none;position:fixed}.glass-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(180deg,#0a101ec7,#0509149e);border:1px solid var(--panel-stroke);box-shadow:var(--shadow-md)}.topbar{align-items:center;border-radius:var(--radius-lg);display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;max-height:120px;overflow:hidden;padding:8px 16px;position:relative;transition:max-height .3s cubic-bezier(.4,0,.2,1),padding .25s ease,opacity .2s ease;z-index:200}.brand-name{color:var(--text-strong);flex-shrink:0;font-size:.95rem;font-weight:700;letter-spacing:.06em;margin:0;white-space:nowrap}.topbar-sep{background:#ffffff1a;flex-shrink:0;height:18px;width:1px}.device-select-compact{font-size:.85rem;max-width:160px;min-height:34px;min-width:80px;padding:0 10px}.graph-kicker,.section-eyebrow{color:var(--text-soft);font-size:11px;letter-spacing:.22em;margin:0;text-transform:uppercase}.graph-title h2,.rail-section h3{margin:0}.input-label{color:var(--text-soft);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.status-message{color:var(--text);font-size:.84rem;line-height:1.35;margin:0;min-height:18px}.status-message.error{color:#ffb59c}.status-message.warn{color:#ffd38e}.status-message.success{color:#a9ffd1}.legend-pill,.meta-chip,.status-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:.83rem;gap:8px;line-height:1;min-height:34px;padding:0 14px}.status-pill{background:#ffffff09;border:1px solid hsla(0,0%,100%,.08);color:var(--text)}.status-pill.live{background:#4ec4e012;border-color:#4ec4e029;color:var(--measurement)}.status-pill.reference{background:#e0945212;border-color:#e0945229;color:var(--reference)}.status-pill.accent{background:#48b87c12;border-color:#48b87c29;color:var(--success)}.view-switcher{align-items:center;background:linear-gradient(180deg,#0c1220c2,#060a14a3);border:1px solid hsla(0,0%,100%,.08);border-radius:999px;box-shadow:inset 0 1px #ffffff0a;display:flex;flex-wrap:nowrap;gap:6px;padding:6px}.vs-sep{background:#ffffff1a;border-radius:1px;flex-shrink:0;height:18px;width:1px}.topbar-row{align-items:center;display:flex;flex-direction:row;flex-shrink:0;gap:8px}.topbar-row .topbar{margin-left:auto;margin-right:auto}.floating-view-switcher{display:none;flex-shrink:0}.app-shell.header-hidden .floating-view-switcher{display:flex}.app-shell.header-hidden .floating-view-switcher .pt-label{display:none}.app-shell.header-hidden .floating-view-switcher .panel-toggle:before{content:attr(data-short);font-size:.7rem;letter-spacing:.04em}.app-shell.header-hidden .floating-view-switcher .panel-toggle{min-height:28px;padding:0 9px}.app-shell.header-hidden .floating-view-switcher .vs-sep{height:14px}.panel-toggle{background:transparent;border:1px solid transparent;border-radius:999px;color:var(--text);cursor:pointer;min-height:42px;padding:0 18px;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}.panel-toggle:hover{transform:translateY(-1px)}.panel-toggle:disabled{cursor:default;opacity:1}.panel-toggle:disabled:hover{transform:none}.panel-toggle.active{background:#ffffff14;box-shadow:inset 0 0 0 1px #ffffff05;color:var(--text-strong)}.panel-toggle.impulse.active{background:#e8e4d71a;border-color:#e8e4d729;color:#ede9dd}.panel-toggle.magnitude.active{background:#4ec4e01a;border-color:#4ec4e033;color:var(--measurement)}.panel-toggle.phase.active{background:#b294d71f;border-color:#b294d733;color:#c8b0e8}.panel-toggle.groupdelay.active{background:#64dcaa1f;border-color:#64dcaa33;color:#7de8b4}.action-button.is-active{background:#4ec4e01f;border-color:#4ec4e03d;color:var(--text-strong)}.action-button.stopped{background:#ff8c281f;border-color:#ffa03c59;color:#ffb060}.action-button.primary.is-active{background:linear-gradient(135deg,#78d2a5f0,#48b87cdb);border-color:#48b87c4d;box-shadow:0 8px 24px #48b87c38;color:#021009}.action-button,.mini-button{border:0;border-radius:999px;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease}.action-button{color:var(--text-strong);min-height:42px;padding:0 18px}.action-button.slim{font-size:.85rem;min-height:32px;padding:0 12px}.action-button:hover,.mini-button:hover{transform:translateY(-1px)}.action-button.primary{background:linear-gradient(135deg,#3cb4e6eb,#1e78c8cc);box-shadow:0 8px 24px #288cdc33;color:#01060a}.action-button.ghost,.mini-button{background:#ffffff0a;border:1px solid hsla(0,0%,100%,.08)}.mini-button{color:var(--text);min-height:36px;padding:0 14px}.mini-button.active{background:#4ec4e01a;border-color:#4ec4e03d;color:var(--text-strong)}.mini-button:disabled{cursor:not-allowed;opacity:.42}.mini-button:disabled:hover{transform:none}.mobile-backdrop{display:none}.workspace{align-items:stretch;display:grid;flex:1;gap:0;grid-template-columns:minmax(0,1fr);height:100%;min-height:0;overflow:hidden;position:relative;z-index:3}.workspace-scrim{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#03060a40;border:0;border-radius:calc(var(--radius-lg) + 4px);inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .28s ease;z-index:7}.graph-stage{display:grid;gap:12px;min-height:0;position:relative;transition:grid-template-columns .28s ease,grid-template-rows .28s ease,filter .28s ease,transform .28s ease;z-index:1}.graph-stage[data-active-count="1"]{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.graph-stage[data-active-count="2"]{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr))}.graph-stage[data-active-count="3"]{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(3,minmax(0,1fr))}.graph-stage[data-active-panels=impulse-magnitude-phase]{grid-template-rows:.5fr 1fr 1fr}.graph-stage[data-active-panels=impulse-magnitude],.graph-stage[data-active-panels=impulse-phase]{grid-template-rows:.5fr 1fr}.graph-card{background:#060a12eb;border:1px solid var(--panel-stroke);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:block;min-height:0;overflow:hidden;position:relative;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}.graph-card.is-hidden{display:none}.app-shell.options-open .workspace-scrim{opacity:.72;pointer-events:auto}.app-shell.options-open .graph-stage{transform:scale(.996)}.graph-impulse{--panel-glow:rgba(232,228,215,.1)}.graph-magnitude{--panel-glow:rgba(78,196,224,.09)}.graph-phase{--panel-glow:rgba(178,148,215,.09)}.graph-groupdelay{--panel-glow:rgba(100,220,170,.09)}.graph-scalogram{--panel-glow:rgba(120,220,160,.09)}.graph-spectrogram{--panel-glow:rgba(0,180,255,.09)}.graph-spectrogram .graph-shell canvas{cursor:crosshair}.graph-stage[data-active-panels=magnitude-groupdelay],.graph-stage[data-active-panels=phase-groupdelay]{grid-template-rows:1fr 1fr}.graph-stage[data-active-panels=magnitude-phase-groupdelay]{grid-template-rows:1fr 1fr 1fr}.graph-stage[data-active-panels=impulse-magnitude-phase-groupdelay]{grid-template-rows:.5fr 1fr 1fr 1fr}.graph-stage[data-active-count="5"]{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:.5fr 1fr 1fr}.graph-stage[data-active-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.graph-stage[data-active-panels=impulse-magnitude-phase-scalogram]{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:.5fr 1fr}.graph-stage[data-active-panels=magnitude-phase-scalogram]{grid-template-rows:1fr 1fr 1fr}.graph-stage[data-active-panels=impulse-magnitude-scalogram],.graph-stage[data-active-panels=impulse-phase-scalogram]{grid-template-rows:.5fr 1fr 1fr}.graph-head{align-items:flex-start;gap:8px 12px;justify-content:space-between;left:50px;pointer-events:none;position:absolute;right:14px;top:12px;z-index:3}.graph-head,.graph-title{display:flex;flex-wrap:wrap}.graph-title{align-items:baseline;gap:6px 10px;min-width:0}.graph-kicker{font-size:10px;letter-spacing:.18em}.graph-title h2{font-size:clamp(.98rem,1.4vw,1.22rem);letter-spacing:.01em}.button-row,.graph-meta,.legend-cluster{display:flex;flex-wrap:wrap;gap:6px}.graph-meta,.legend-cluster{justify-content:flex-start}.graph-head .legend-pill,.graph-head .meta-chip{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060a109e;border-color:#ffffff12;font-size:.72rem;min-height:26px;padding:0 10px}.legend-pill,.meta-chip{background:#ffffff0a;border:1px solid hsla(0,0%,100%,.08);color:var(--text)}.meta-chip-button{cursor:pointer;pointer-events:auto;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}.meta-chip-button:hover{transform:translateY(-1px)}.meta-chip-button.is-active{background:#4ec4e01f;border-color:#4ec4e038;box-shadow:inset 0 0 0 1px #4ec4e014;color:#e8f4fa}.meta-chip-button:not(.is-active){background:#ffffff09;border-color:#ffffff14;color:var(--text)}.legend-pill.measurement{color:var(--measurement)}.legend-pill.reference{color:var(--reference)}.graph-shell{padding:10px;position:relative}.graph-shell,canvas{height:100%;min-height:0}canvas{border-radius:18px;cursor:crosshair;display:block;width:100%}.graph-caption{background:#060a10b3;border:1px solid hsla(0,0%,100%,.08);border-radius:999px;bottom:30px;color:#e4edfacc;font-size:.7rem;left:50px;letter-spacing:.01em;max-width:min(70%,520px);overflow:hidden;padding:5px 8px;text-overflow:ellipsis;white-space:nowrap;z-index:2}.control-rail,.graph-caption{pointer-events:none;position:absolute}.control-rail{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0e121afa;border:1px solid rgba(184,210,238,.12);border-radius:var(--radius-md) 0 0 var(--radius-md);border-right:none;box-shadow:-16px 0 48px #00000080;display:flex;flex-direction:column;height:100%;left:auto;max-height:none;max-width:100%;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:0;right:0;top:0;transform:translate(calc(100% + 1px));transition:transform .3s cubic-bezier(.16,1,.3,1);width:min(360px,100%);z-index:100}.app-shell.options-open .control-rail{pointer-events:auto;transform:translate(0)}.rail-topbar{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#090d13f7;border-bottom:1px solid hsla(0,0%,100%,.07);gap:12px;justify-content:space-between;padding:14px 20px;position:sticky;top:0;z-index:4}.rail-close,.rail-topbar{align-items:center;display:flex}.rail-close{background:#ffffff0d;border:1px solid hsla(0,0%,100%,.1);border-radius:999px;color:var(--text-soft);cursor:pointer;flex:0 0 auto;font-size:.9rem;height:30px;justify-content:center;padding:0;transition:background .18s ease,color .18s ease,border-color .18s ease;width:30px}.rail-close:hover{background:#ffffff1a;border-color:#4ec4e040;color:var(--text-strong)}.control-rail::-webkit-scrollbar{width:10px}.control-rail::-webkit-scrollbar-track{background:#ffffff08;border-radius:999px}.control-rail::-webkit-scrollbar-thumb{background:#4ec4e033;border:2px solid rgba(8,12,18,.5);border-radius:999px}.control-rail::-webkit-scrollbar-thumb:hover{background:#4ec4e052}.rail-body{display:flex;flex:1;flex-direction:column;gap:20px;padding:20px}.rail-section{display:flex;flex-direction:column;gap:14px}.rail-highlight{background:linear-gradient(180deg,#ffffff09,#ffffff05);border:1px solid hsla(0,0%,100%,.08);border-radius:var(--radius-md);padding:18px}.rail-section h3{color:var(--text-strong);font-size:1rem}.metric-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.inspector-card,.metric-card{background:#ffffff09;border:1px solid hsla(0,0%,100%,.08);border-radius:var(--radius-sm);padding:12px 14px}.metric-card{display:flex;flex-direction:column;justify-content:space-between;min-height:84px}.inspector-label,.metric-label{color:var(--text-soft);font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}.inspector-value,.metric-value,.mono{font-family:var(--font-mono)}.metric-value{color:var(--text-strong);font-size:1.05rem}.inspector-stack{display:grid;gap:10px}.inspector-card{align-items:center;display:flex;gap:16px;justify-content:space-between}.inspector-value{color:var(--text-strong);font-size:.96rem}.control-line{justify-content:space-between}.control-line,.toggle-line{align-items:center;color:var(--text);display:flex;font-size:.92rem}.toggle-line{gap:12px}.toggle-line input[type=checkbox]{accent-color:#4ec4e0;height:16px;width:16px}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(90deg,#4ec4e073,#e0945252);border-radius:999px;height:4px;outline:none;width:100%}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#f3f7ff;border-radius:50%;box-shadow:0 0 0 4px #4ec4e026;height:16px;width:16px}select{background:#070a10e6;border:1px solid hsla(0,0%,100%,.1);border-radius:12px;color:var(--text-strong);min-height:40px;padding:0 14px}.header-expand-btn{align-items:center;background:#ffffff0a;border:1px solid hsla(0,0%,100%,.08);border-radius:var(--radius-sm);color:var(--text-soft);cursor:pointer;display:flex;flex-shrink:0;font-size:.9rem;height:32px;justify-content:center;transition:color .18s ease,background .18s ease,transform .22s ease;width:32px}.header-expand-btn:hover{background:#ffffff14;color:var(--text-strong)}.app-shell.header-hidden .header-expand-btn{transform:rotate(180deg)}.app-shell.header-hidden .topbar{max-height:0;opacity:0;padding-bottom:0;padding-top:0;pointer-events:none}.header-restore-tab{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#12141ee0;border:1px solid hsla(0,0%,100%,.1);border-radius:0 0 var(--radius-sm) var(--radius-sm);border-top:none;color:var(--text-soft);cursor:pointer;display:flex;font-size:.75rem;gap:6px;left:50%;letter-spacing:.08em;padding:4px 16px 6px;position:fixed;top:0;transform:translate(-50%) translateY(-100%);transition:transform .24s cubic-bezier(.4,0,.2,1),color .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:200}.header-restore-tab:hover{color:var(--text-strong)}.header-restore-tab.visible{transform:translate(-50%) translateY(0)}.app-shell.focus-mode .workspace{grid-template-columns:minmax(0,1fr)}.app-shell.focus-mode .control-rail{display:none}@media(max-width:900px){body{overflow:auto}.app-shell{min-height:100vh;overflow:hidden;padding:14px}.workspace{overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.workspace-scrim{border-radius:24px}.control-rail{border-radius:0;border-right:none;height:100%;max-width:100%;padding:18px;right:0;top:0;width:100%}.rail-topbar{margin:-18px -18px 2px;padding:18px 18px 16px;top:-18px}.graph-stage[data-active-count="1"]{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(260px,1fr)}.graph-stage[data-active-count="2"]{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,minmax(220px,1fr))}.graph-stage[data-active-count="3"]{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(3,minmax(220px,1fr))}.graph-stage[data-active-count="4"]{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(4,minmax(180px,1fr))}.graph-head{left:50px;right:10px;top:10px}.graph-meta,.legend-cluster{justify-content:flex-start}.graph-caption{max-width:calc(100% - 34px)}.metric-grid{grid-template-columns:1fr}}#canvasInspector{background:#080a10c7;border:1px solid hsla(0,0%,100%,.1);border-radius:5px;color:#d0d6e2;display:none;flex-direction:column;font:11px/1.7 monospace;gap:1px;padding:5px 10px;pointer-events:none;position:absolute;right:14px;top:10px;z-index:30}#canvasInspector .ci-row{align-items:baseline;display:flex;gap:7px}#canvasInspector .ci-label{color:#505a6a;font-size:10px;min-width:12px}.cf-tower{display:flex;flex-direction:row;height:100vh;left:0;pointer-events:none;position:fixed;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:50}.cf-tab{align-items:center;background:#0c101ad1;border:none;border-right:1px solid rgba(255,230,0,.12);color:#ffe60073;cursor:pointer;display:flex;flex-shrink:0;font:700 9px monospace;height:100%;justify-content:center;letter-spacing:.18em;padding:0;pointer-events:all;text-orientation:mixed;transition:background .2s,color .2s;width:22px;writing-mode:vertical-rl}.cf-tab:hover,.cf-tower.open .cf-tab{background:#141822f2;color:#ffe600cc}.cf-panel{overflow:hidden;pointer-events:none;transition:width .25s cubic-bezier(.4,0,.2,1);width:0}.cf-tower.open .cf-panel{pointer-events:all;width:130px}.cf-panel-inner{background:#080b14e6;border-right:1px solid hsla(0,0%,100%,.06);box-sizing:border-box;gap:6px;height:100%;padding:48px 10px 16px;width:130px}.cf-panel-inner,.cf-top-block{display:flex;flex-direction:column}.cf-top-block{align-items:center;gap:1px}.cf-title{color:#ffe60073;font:700 8px monospace;letter-spacing:.14em;text-align:center}.cf-readouts{display:flex;gap:4px;justify-content:space-between}.cf-readouts span{color:#dcf0ffd9;font:600 11px monospace;min-width:42px;text-align:center}.cf-peak-readouts span{color:#dcf0fff2;font:700 15px monospace}.cf-readout-labels{display:flex;gap:4px;justify-content:space-between}.cf-readout-labels span{color:#ffffff40;font:8px monospace;min-width:42px;text-align:center}.cf-body{align-items:stretch;display:flex;flex:1;gap:3px;min-height:0}.cf-scale-labels{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:18px}.cf-scale-labels span{color:#fff3;font:8px monospace;line-height:1;white-space:nowrap}.cf-bars{align-items:stretch;display:flex;flex:1;gap:5px}.cf-bar-col{align-items:center;display:flex;flex:1;flex-direction:column;gap:4px}.cf-ch-label{color:#ffffff4d;font:8px monospace}.cf-bar{background:#ffffff0a;border-radius:3px;flex:1;overflow:hidden;position:relative;width:100%}.cf-rms-fill{background:linear-gradient(0deg,#4ec4e0 0,#7de8b4 55%,#ffe600 82%,#f33);border-radius:3px;height:0}.cf-peak-tick,.cf-rms-fill{bottom:0;left:0;position:absolute;right:0}.cf-peak-tick{background:#ffffffe6;border-radius:1px;height:3px;transition:background .1s}.cf-peak-tick.clip{background:#f33;box-shadow:0 0 4px #f33}.cf-center-col{align-items:center;display:flex;flex-direction:column;gap:2px;justify-content:center}.cf-cf-val{color:#ffe600;font:700 18px monospace;white-space:nowrap}.cf-mode-chip{background:none;border:none;border-radius:3px;color:#ffe6008c;cursor:pointer;font:700 7px monospace;letter-spacing:.12em;padding:2px 4px;pointer-events:all;transition:color .15s,background .15s}.cf-mode-chip:hover{background:#ffe60014;color:#ffe600e6}.cf-label-cf{color:#ffe60066;font:8px monospace;white-space:nowrap}.snapshot-bar{align-items:center;border-radius:999px;display:none;flex-shrink:0;gap:6px;padding:6px 10px;white-space:nowrap}.app-shell.header-hidden .snapshot-bar,.snap-slots{display:flex}.snap-slots{align-items:center;gap:5px;padding:0 2px}.snap-dot{background:#ffffff14;border:1px solid hsla(0,0%,100%,.12);border-radius:50%;cursor:pointer;flex-shrink:0;height:13px;outline:2px solid transparent;outline-offset:2px;transition:background .2s,box-shadow .2s,border-color .2s,outline-color .2s;width:13px}.snap-dot.filled{background:var(--dot-color);border-color:var(--dot-color);box-shadow:0 0 6px var(--dot-color)}.snap-dot.selected{outline-color:var(--dot-color)}.snap-dot:not(.filled).selected{border-color:var(--dot-color);outline-color:color-mix(in srgb,var(--dot-color) 50%,transparent)}.snap-divider{background:#ffffff1a;flex-shrink:0;height:18px;width:1px}.snap-btn{background:transparent;border:1px solid transparent;border-radius:999px;color:var(--text);cursor:pointer;font-size:.78rem;height:30px;letter-spacing:.02em;padding:0 12px;transition:background .18s,border-color .18s,color .18s,opacity .18s}.snap-btn:disabled{cursor:default;opacity:.32}.snap-capture{background:#48c8960f;border-color:#48c89640;color:#48c896}.snap-capture:not(:disabled):hover{background:#48c89624;border-color:#48c89673}.snap-capture.active{background:#48c8961f;border-color:#48c89659}.snap-clear{border-color:#ffffff14;color:var(--text-soft)}.snap-clear:not(:disabled):hover{background:#f5a62312;border-color:#f5a6234d;color:#f5a623}.snap-export{border-color:#ffffff14;color:var(--text-soft)}.snap-export:not(:disabled):hover{background:#4a90e212;border-color:#4a90e24d;color:#4a90e2}.snap-toggle{border-color:#ffffff14;color:var(--text-soft)}.snap-toggle.active{background:#45f3ff12;border-color:#45f3ff40;color:#45f3ffd9}.snap-toggle:hover{border-color:#45f3ff33;color:#45f3ff99}.snap-stop{border-color:#ffffff14;color:var(--text-soft)}.snap-stop:not(:disabled):hover{background:#f5a62312;border-color:#f5a6234d;color:#f5a623}.snap-stop.stopped{background:#f5a6231a;border-color:#f5a62359;color:#f5a623}.preset-quick-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#ffffff0f;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath fill='%23888' d='m0 0 5 6 5-6z'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border:1px solid hsla(0,0%,100%,.12);border-radius:999px;color:#d0d0d0;cursor:pointer;display:none;flex-shrink:0;font-family:inherit;font-size:11px;height:30px;max-width:150px;outline:none;padding:5px 22px 5px 12px;transition:border-color .15s,background-color .15s}.preset-quick-select:hover{background-color:#ffffff1a;border-color:#4ec4e04d}.preset-quick-select:focus{border-color:#4ec4e080}.preset-quick-select option{background:#1a1a2e;color:#d0d0d0}.app-shell.header-hidden .preset-quick-select{display:block}.preset-save-row{align-items:center;display:flex;gap:8px;margin-bottom:10px}.preset-name-input{background:#070a10e6;border:1px solid hsla(0,0%,100%,.1);border-radius:12px;color:var(--text-strong);flex:1;font:inherit;font-size:.88rem;min-height:34px;outline:none;padding:0 12px;transition:border-color .18s ease}.preset-name-input:focus{border-color:#4ec4e066}.preset-name-input.input-error{animation:preset-shake .3s ease;border-color:#ff78648c}@keyframes preset-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.preset-save-btn{flex-shrink:0;white-space:nowrap}.preset-list{display:flex;flex-direction:column;gap:5px;max-height:220px;overflow-y:auto;padding-right:2px}.preset-list::-webkit-scrollbar{width:5px}.preset-list::-webkit-scrollbar-track{background:transparent}.preset-list::-webkit-scrollbar-thumb{background:#4ec4e02e;border-radius:999px}.preset-row{align-items:center;border-radius:10px;display:flex;gap:5px;padding:2px;transition:background .15s ease}.preset-row.is-active{background:#4ec4e014;outline:1px solid rgba(78,196,224,.2)}.preset-name-btn{background:#ffffff0a;border:1px solid hsla(0,0%,100%,.07);border-radius:8px;color:var(--text);cursor:pointer;flex:1;font-size:.88rem;min-height:32px;overflow:hidden;padding:0 12px;text-align:left;text-overflow:ellipsis;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.preset-name-btn:hover{background:#ffffff14;border-color:#4ec4e033;color:var(--text-strong)}.preset-name-btn.preset-builtin{border-color:#e094522e;color:var(--text-soft);font-style:italic}.preset-name-btn.preset-builtin:before{color:#e094528c;content:"★ ";font-style:normal}.preset-delete-btn{align-items:center;background:transparent;border:1px solid hsla(0,0%,100%,.07);border-radius:8px;color:var(--text-soft);cursor:pointer;display:flex;flex-shrink:0;font-size:.78rem;height:28px;justify-content:center;padding:0;transition:background .15s,color .15s,border-color .15s,width .15s;width:28px}.preset-delete-btn:hover{background:#ff50501f;border-color:#ff505040;color:#f88}.preset-delete-btn.preset-delete-confirm{background:#ff50502e;border-color:#ff505066;color:#faa;font-size:.68rem;width:42px}.preset-empty{color:var(--text-soft);font-size:.84rem;font-style:italic;margin:0;padding:8px 0;text-align:center}.options-tower{align-items:center;display:flex;height:100vh;pointer-events:none;position:fixed;right:0;top:0;transition:right .3s cubic-bezier(.16,1,.3,1);z-index:101}.app-shell.options-open .options-tower{right:min(360px,100%)}.options-tower-tab{align-items:center;background:#0c101ad1;border:none;border-left:1px solid rgba(69,243,255,.12);border-radius:var(--radius-sm) 0 0 var(--radius-sm);color:#45f3ff73;cursor:pointer;display:flex;font:700 9px monospace;height:120px;justify-content:center;letter-spacing:.18em;padding:0;pointer-events:all;text-orientation:mixed;transition:background .2s,color .2s;width:22px;writing-mode:vertical-rl}.app-shell.options-open .options-tower-tab,.options-tower-tab:hover{background:#141822f2;color:#45f3ffd9}
