:root{--bg:#0e0f12;--bg-panel:#16171c;--bg-elev:#1c1d23;--bg-input:#161a22;--border:#2a2b32;--border-strong:#363740;--text:#f2f2f4;--text-dim:#8a8a92;--text-faint:#666770;--coral:#ff5a4d;--coral-bright:#ff6e63;--coral-dim:#cf4d42;--coral-soft:#ff5a4d1f;--ok:#3fb950;--warn:#d9a441;--info:#4a9eff;--pwa-bg:#0b131f;--pwa-edge:#1d3350;--pwa-accent:#3d6ea5;--radius:8px;--radius-sm:7px;--radius-lg:14px;--gap:12px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);overflow:hidden}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--coral-dim)}::-webkit-scrollbar-track{background:0 0}button{font:inherit;color:var(--text);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:6px 12px;transition:background .12s,border-color .12s}button:hover{border-color:var(--border-strong);background:var(--bg-input)}button.primary{background:var(--coral);border-color:var(--coral);color:#1a1113;font-weight:600}button.primary:hover{background:var(--coral-bright);border-color:var(--coral-bright)}button:disabled{opacity:.4;cursor:not-allowed}select,input[type=text],input[type=number]{font:inherit;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:5px 8px}input[type=range]{accent-color:var(--coral)}h1,h2,h3{margin:0;font-weight:600}::selection{background:var(--coral-soft)}.gate{z-index:1000;text-align:center;background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex;position:fixed;inset:0}.gate-logo{border-radius:18px}.gate h1{margin:0;font-size:24px;font-weight:700}.gate p{color:var(--text-faint);margin:0;font-size:14px}.gate form{gap:8px;width:min(360px,90%);margin-top:4px;display:flex}.gate input{font:inherit;color:var(--text);background:var(--bg-elev);border:1px solid var(--border);border-radius:9px;flex:1;padding:10px 12px}.gate input:focus{border-color:var(--coral);outline:none}.gate button{font:inherit;color:#fff;background:var(--coral);cursor:pointer;border:0;border-radius:9px;padding:10px 18px;font-weight:600}.gate button:hover{background:var(--coral-bright)}.gate-err{min-height:16px;color:var(--coral);font-size:13px}.pw-overlay{z-index:4000;color:#e6e7ea;background:#0e0f13;flex-direction:column;font:13px/1.4 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;position:fixed;inset:0}.pw-topbar{background:#16171c;border-bottom:1px solid #262832;align-items:center;gap:12px;padding:10px 14px;display:flex}.pw-title{letter-spacing:.3px;font-size:16px;font-weight:700}.pw-tag{color:var(--coral);border:1px solid #ff8a3d80;border-radius:10px;padding:2px 7px;font-size:10px;font-weight:700}.pw-spacer{flex:1}.pw-hint{color:#8b8f9a;font-size:12px}.pw-close{color:#e6e7ea;cursor:pointer;background:#23252e;border:1px solid #363945;border-radius:8px;width:30px;height:30px;font-size:14px}.pw-close:hover{background:#2e3140}.pw-stage-btn{background:var(--coral);color:#14060a;border:1px solid var(--coral);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;padding:7px 16px;font-size:13px;font-weight:700;transition:background .14s,border-color .14s}.pw-stage-btn:hover{background:var(--coral-bright);border-color:var(--coral-bright)}.pw-stage{perspective:1800px;flex:1;min-height:0;padding:14px;position:relative;overflow:hidden}.pw-slide{transform-origin:50%;pointer-events:none;justify-content:center;align-items:center;transition:transform .6s cubic-bezier(.66,0,.2,1),opacity .55s,filter .55s;display:flex;position:absolute;inset:0}.pw-slide-inner{transform-origin:50%;will-change:transform;pointer-events:auto}.pw-racks-wrap{flex-direction:column;align-items:center;gap:12px;display:flex;position:relative}.pw-racks-row{align-items:flex-start;gap:16px;display:flex}.pw-regletas{justify-content:center;width:100%;display:flex}.pw-regletas-panel{gap:8px;width:fit-content;min-width:420px;padding:10px 14px}.pw-regletas-row{flex-wrap:wrap;justify-content:center;gap:22px;display:flex}.pw-regleta{background:linear-gradient(#f5f3ed,#e2ded1);border:1px solid #c7c1af;border-radius:6px;align-items:center;gap:7px;padding:6px 9px;display:flex;box-shadow:0 1px 3px #00000059}.pw-reg-inlet{display:flex}.pw-reg-switch{cursor:pointer;color:#fff;background:linear-gradient(#e34a3a,#b02a1f);border:1px solid #7d1b16;border-radius:3px;justify-content:center;align-items:center;width:20px;height:26px;font:800 12px/1 system-ui;display:flex}.pw-reg-switch.on{background:linear-gradient(#c93526,#8f1d13);box-shadow:inset 0 1px 2px #0006}.pw-reg-pilot{background:#571713;border-radius:50%;flex:none;width:7px;height:7px;box-shadow:inset 0 0 2px #200}.pw-reg-pilot.lit{background:#ff3b2e;box-shadow:0 0 8px #ff3b2ee6}.pw-reg-outlets{gap:3px;display:flex}.pw-reg-outlets .pw-pcon-svg{width:17px;height:17px}.pw-reg-label{color:#555;white-space:nowrap;font-size:7px;font-weight:700}.pw-svg rect{transition:y .17s cubic-bezier(.34,1.4,.5,1)}.pw-cables{pointer-events:none;z-index:6;position:absolute;top:0;left:0;overflow:visible}.pw-cable-line{fill:none;stroke:#6b7079;stroke-width:4.5px;stroke-linecap:round;opacity:.95;pointer-events:stroke;cursor:pointer;transition:stroke-width .12s}.pw-cable-line.dead{stroke:#45474d;opacity:.4}.pw-cable-line:hover,.pw-cable-line.hovered{stroke:#ffcf5a;stroke-width:7px;opacity:1;filter:drop-shadow(0 0 4px #ffcf5ab3)}.pw-cable-end{fill:#3f5bcb;stroke:#1f2a55;stroke-width:1px}.pw-conn{cursor:pointer;background:0 0;border:0;border-radius:5px;margin:0;padding:0;line-height:0;display:inline-flex}.pw-conn:hover{outline-offset:1px;outline:2px solid #5b9dff}.pw-conn.patched{outline-offset:1px;outline:2px solid #767b85}.pw-conn.patched.live{outline:2px solid #46d07a;box-shadow:0 0 8px #46d07a99}.pw-conn.sel{outline-offset:1px;outline:2px solid #ffb020;box-shadow:0 0 9px #ffb020a6}.pw-conn.linked{outline-offset:1px;outline:2.5px solid #ffcf5a;box-shadow:0 0 10px #ffcf5acc}.pw-nav{z-index:5;color:#e6e7ea;cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181a21d9;border:1px solid #3a3e4b;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:7px 6px;transition:background .2s,transform .2s;display:flex;position:absolute;top:58%;transform:translateY(-50%)}.pw-nav[hidden]{display:none}.pw-cable-info{z-index:7;text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);color:#9aa0aa;white-space:nowrap;pointer-events:none;background:#14161ceb;border:1px solid #363a47;border-radius:9px;max-width:82%;padding:7px 14px;font-size:12.5px;font-weight:600;transition:color .15s,border-color .15s;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.pw-cable-info.show{color:#ffcf5a;border-color:#6a5a2e}.pw-nav:hover{background:#2b2f3c}.pw-nav-next{right:14px}.pw-nav-prev{left:12px}.pw-nav-chev{color:var(--coral);font-size:19px;line-height:1}.pw-nav-label{text-align:center;color:#aeb3c0;max-width:48px;font-size:8.5px;font-weight:700;line-height:1.1}.pw-data{align-items:center;width:fit-content}.pw-data-flow{align-items:center;gap:14px;display:flex}.pw-s4{width:auto;height:316px;display:block}.pw-data-src,.pw-data-bars{color:#cfd3db;text-align:center;background:#171922;border:1px solid #2c2f3a;border-radius:8px;padding:12px 14px;font-size:13px;font-weight:700}.pw-data-arrow{color:var(--coral);font-size:22px}.pw-data-note{color:#9aa0aa;text-align:center;max-width:520px;margin:4px auto 0;font-size:12px;line-height:1.5}.pw-panel{box-sizing:border-box;background:linear-gradient(#20222b,#191b22);border:1px solid #2c2f3a;border-radius:10px;flex-direction:column;flex:none;gap:10px;padding:12px;display:flex;box-shadow:inset 0 1px #ffffff0a}.pw-rack{min-height:424px}.pw-panel>header{letter-spacing:1px;color:#aeb3c0;text-align:center;background:#12131a;border:1px solid #2c2f3a;border-radius:6px;flex:none;padding:5px 8px;font-size:12px;font-weight:800}.pw-rack{width:284px}.pw-board{width:506px}.pw-pcon-svg{flex:none;width:19px;height:19px;display:block}.pw-cell-pcons{gap:2px;display:flex}.pw-bay-body{flex-direction:column;flex:1;display:flex}.pw-bay-row{justify-content:space-around;align-items:flex-end;padding:0 2px;display:flex}.pw-cell{flex-direction:column;align-items:center;gap:2px;display:flex}.pw-cell-num{color:#2a2c33;background:#e6e7ea;border-radius:2px;padding:0 3px;font-size:7.5px;font-weight:700;line-height:1.35}.pw-board-rows{flex-direction:column;flex:1;gap:10px;display:flex}.pw-board-row{background:#14151b;border:1px solid #2a2d38;border-radius:8px;padding:7px 9px}.pw-row-label{color:#7f8593;letter-spacing:.5px;margin-bottom:5px;font-size:10px;font-weight:700}.pw-row-breakers{align-items:flex-start;gap:3px;padding-top:2px;display:flex}.pw-mod{cursor:pointer;border-radius:4px;flex-direction:column;flex:none;align-items:center;display:flex;position:relative}.pw-mod:hover{filter:brightness(1.09)}.pw-mod:focus-visible{outline-offset:1px;outline:2px solid #5b9dff}.pw-chan{cursor:pointer;border-radius:3px}.pw-chan:hover{filter:brightness(1.12)}.pw-chan:focus-visible{outline:2px solid #5b9dff}.pw-mod .pw-svg{width:auto;height:62px;display:block}.pw-mod-tab{z-index:1;border-radius:2px;height:4px;position:absolute;top:-6px;left:10%;right:10%}.pw-mod-name{letter-spacing:-.1px;color:#3a3a3a;text-align:center;background:#f3efe5e6;border:.5px solid #cbc5b4;border-radius:1px;max-height:11px;padding:.5px 0;font-size:5px;font-weight:600;line-height:1.02;position:absolute;bottom:3px;left:1px;right:1px;overflow:hidden}.pw-testbtn{cursor:pointer}.pw-testbtn:hover{filter:brightness(1.25)}.pw-dimmer-slot{flex-direction:column;flex:none;display:flex}.pw-dimmer-unit{background:linear-gradient(#223458,#182640);border:1px solid #2c3d61;border-radius:5px;flex:none;align-items:center;gap:10px;padding:5px 10px;display:flex;position:relative}.pw-dimmer-lcdcol{flex-direction:column;flex:none;align-items:center;gap:3px;display:flex}.pw-dimmer-brand{color:#9fbdf0;letter-spacing:.4px;font-size:8px;font-weight:800;position:absolute;top:3px;right:9px}.pw-dimmer-screen{background:#05080c;border:1px solid #10151d;border-radius:2px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:1px;width:46px;height:21px;padding:2px;display:flex}.pw-dimmer-screen.on{background:#081018;border-color:#143050;box-shadow:inset 0 0 7px #328ce647}.pw-lcd-line{color:#63d2ff;letter-spacing:.3px;text-shadow:0 0 3px #63d2ff99;font:700 7px/1.1 ui-monospace,SF Mono,monospace}.pw-lcd-dim{color:#3f8fc9;font-weight:500}.pw-dimmer-menu{gap:3px;display:flex}.pw-dimmer-menu>i{background:#34506f;border:.5px solid #22364d;border-radius:1px;width:6px;height:3.5px}.pw-dimmer-chans{align-items:flex-start;gap:1px;display:flex}.pw-chan{flex-direction:column;align-items:center;display:flex}.pw-chan .pw-svg{width:auto;height:30px;display:block}.pw-chan>b{color:#9aa0ad;margin-top:1px;font-size:6.5px;font-weight:500}.pw-vent{background:#0b0c10 repeating-linear-gradient(#0b0c10 0 2.5px,#23262f 2.5px 4px);border:1px solid #1b1d25;border-radius:3px;flex:none;height:8px;margin:3px 0}.pw-legend{background:#16171c;border-top:1px solid #262832;flex-wrap:wrap;align-items:center;gap:16px;padding:8px 14px;display:flex}.pw-legend-title{color:#8b8f9a;font-size:12px;font-weight:600}.pw-legend-item{color:#c7cbd3;cursor:help;align-items:center;gap:6px;font-size:12px;display:flex}.pw-legend .lg{border-radius:3px;flex:none;width:13px;height:13px}.lg-diff{background:linear-gradient(#f4f5f8,#d9dbe1);border:1px solid #b3b8c2}.lg-test{background:#2a6cff;border:1px solid #1b4fbf}.lg-mcb{background:linear-gradient(#f4f5f8,#d9dbe1);border:1px solid #b3b8c2;position:relative}.lg-mcb:after{content:"";background:#2ac26a;border-radius:1px;width:3px;height:6px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.lg-directo{background:#e9e94a}.pw-directos{background:#14151b;border:1px solid #2a2d38;border-radius:8px;padding:8px}.pw-directos-label{letter-spacing:3px;text-align:center;color:#cfd3dc;margin-bottom:6px;font-size:11px;font-weight:800}.pw-directos-bars{gap:3px;margin-bottom:5px;display:flex}.pw-directos-bars>span{border-radius:2px;flex:1;height:5px}.pw-directos-row{justify-content:space-between;align-items:center;gap:1px;display:flex}.pw-help-btn{color:#e6e7ea;cursor:pointer;white-space:nowrap;background:#23252e;border:1px solid #363945;border-radius:8px;padding:6px 12px;font-size:12px}.pw-help-btn:hover{background:#2e3140}.pw-help-backdrop{z-index:4001;background:#00000073;position:fixed;inset:0}.pw-help{z-index:4002;color:#dfe1e6;background:#14151b;border-left:1px solid #2c2f3a;width:min(430px,92vw);padding:16px 18px;position:fixed;top:0;bottom:0;right:0;overflow:auto;box-shadow:-12px 0 40px #00000080}.pw-help-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.pw-help-head b{font-size:16px}.pw-help-intro{color:#9aa0ad;margin:0 0 16px;font-size:13px;line-height:1.5}.pw-help-sec{margin-bottom:15px}.pw-help-sec h4{color:#f0b000;margin:0 0 4px;font-size:14px}.pw-help-sec p{color:#c7cbd3;margin:0;font-size:13px;line-height:1.55}.shell{flex-direction:column;height:100%;display:flex}.topbar{background:var(--pwa-bg);border-bottom:1px solid var(--pwa-edge);flex:none;align-items:center;gap:16px;padding:8px 16px;display:flex}.topbar .brand{align-items:baseline;gap:10px;display:flex}.topbar .brand h1{letter-spacing:.2px;font-size:17px}.topbar .brand h1 .accent{color:var(--coral)}.topbar .brand .tagline{color:var(--text-faint);font-size:12px}.topbar .brand .appver{color:var(--text-faint);font-variant-numeric:tabular-nums;border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:1px 7px;font-size:11px}.topbar .spacer{flex:1}.mode-tabs{background:var(--bg);border-radius:var(--radius);border:1px solid var(--border);gap:4px;padding:3px;display:flex}.mode-tabs button{border-radius:var(--radius-sm);color:var(--text-dim);background:0 0;border:none;padding:5px 16px}.mode-tabs button.active{background:var(--coral);color:#1a1113;font-weight:600}.tour-launch{border:1px solid var(--coral);color:var(--coral);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;padding:4px 12px;font-size:12px;font-weight:600}.tour-launch:hover{background:var(--coral);color:#16131a}.world-toggle{z-index:5000;border:1px solid var(--coral);background:var(--coral);color:#14060a;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:7px 20px;font-size:13px;font-weight:700;transition:background .14s,border-color .14s;display:inline-flex;position:fixed;top:8px;left:50%;transform:translate(-50%);box-shadow:0 2px 10px #0006}.world-toggle:hover{background:var(--coral-bright);border-color:var(--coral-bright)}.body{gap:var(--gap);padding:var(--gap);flex:1;grid-template-columns:minmax(300px,380px) 1fr;min-height:0;display:grid}.right-col{gap:var(--gap);grid-template-rows:1fr minmax(160px,240px);min-height:0;display:grid}.workspace{min-height:0;padding:var(--gap);flex:1}.pane{width:100%;min-width:0;height:100%;min-height:0;display:flex;position:relative}.pane>*{flex:1;min-width:0;min-height:0}.pwa-pane{background:var(--pwa-bg);box-shadow:inset 3px 0 0 var(--pwa-accent)}.pwa-pane .panel,.pwa-pane .dmx-monitor{background:0 0}.pwa-panel{flex-direction:column;width:100%;height:100%;min-height:0;display:flex}.pwa-tabs{border-bottom:1px solid var(--pwa-edge);flex:none;align-items:center;gap:4px;padding:5px 8px 5px 12px;display:flex}.pwa-tabs button{color:var(--text-dim);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;padding:3px 11px;font-size:11px;font-weight:500}.pwa-tabs button:hover{color:var(--text)}.pwa-tabs button.on{color:#eaf3ff;border-color:var(--pwa-accent);background:#16283c}.pwa-tabs-tag{letter-spacing:.6px;color:var(--pwa-accent);border:1px solid var(--pwa-edge);border-radius:4px;margin-left:auto;margin-right:26px;padding:1px 5px;font-size:8.5px;font-weight:700}.pwa-panel-body{flex:1;min-height:0;position:relative;overflow:hidden}.pwa-panel-body>*{width:100%;height:100%}.patch-bar{border-bottom:1px solid var(--border);flex:none;gap:8px;padding:5px 10px;display:flex}.patch-bar label{color:var(--text-dim);align-items:center;gap:4px;font-size:10px;display:flex}.patch-bar select,.patch-bar input{background:var(--bg-input);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:2px 5px;font-size:11px}.patch-bar input{width:52px}.patch-bar input:focus,.patch-bar select:focus{border-color:var(--pwa-accent);outline:none}.patch-attrs{gap:3px;margin-top:3px;display:flex}.patch-attrs span{text-align:center;width:12px;color:var(--text-faint);background:#1a1a22;border-radius:2px;font-size:8.5px;font-weight:700}.patch-attrs span.on{color:#16131a;background:var(--coral)}.pane-fold{z-index:20;width:24px;height:20px;color:var(--text-faint);background:var(--bg-elev);border:1px solid var(--border);cursor:pointer;border-radius:5px;flex:none;justify-content:center;align-items:center;padding:0;font-size:13px;line-height:1;display:flex;position:absolute;top:6px;right:10px}.pane-fold:hover{color:var(--text);border-color:var(--coral)}.panel>header.mon-header,.panel>header.fx-win-header{padding-right:44px}.mon-header>h2,.fx-win-header>h2{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.mon-header .vh-tools,.fx-win-header .vh-tools{flex:none}.rz{z-index:5;flex:none;position:relative}.rz-v{width:var(--gap);cursor:col-resize}.rz-h{height:var(--gap);cursor:row-resize}.rz:after{content:"";background:var(--border-strong);border-radius:2px;transition:background .12s;position:absolute}.rz-v:after{width:3px;height:32px;top:50%;left:50%;transform:translate(-50%,-50%)}.rz-h:after{width:32px;height:3px;top:50%;left:50%;transform:translate(-50%,-50%)}.rz:hover:after,.rz[data-resize-handle-state=hover]:after,.rz[data-resize-handle-state=drag]:after{background:var(--coral)}.vh-tools{align-items:center;gap:8px;margin-left:auto;display:flex}.ghost-btn{border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid var(--border);color:var(--text);padding:3px 9px;font-size:11px}.ghost-btn:hover:not(:disabled){border-color:var(--coral)}.ghost-btn:disabled{opacity:.4;cursor:not-allowed}.ghost-btn.active{background:var(--coral);border-color:var(--coral);color:#16131a;font-weight:600}.venue-select{border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid var(--border);max-width:150px;color:var(--text);cursor:pointer;padding:3px 6px;font-size:11px}.venue-select:hover{border-color:var(--coral)}.tour-start{border-radius:var(--radius-sm);background:var(--coral-soft);border:1px solid var(--coral);color:var(--text);white-space:nowrap;padding:5px 10px;font-size:12px}.tour-start:hover{background:var(--coral);color:#16131a}.tour-root{z-index:1000;position:fixed;inset:0}.tour-hole{box-shadow:0 0 0 4px var(--coral), 0 0 0 9999px #06060ab8;pointer-events:none;border-radius:8px;transition:top .18s,left .18s,width .18s,height .18s;position:fixed}.tour-dim{background:#06060ab8;position:fixed;inset:0}.tour-callout{background:var(--bg-elev,#1b1b22);border:1px solid var(--coral);border-radius:var(--radius);color:var(--text);padding:14px 16px;position:fixed;box-shadow:0 12px 40px #00000080}.tour-callout h3{margin:4px 0 6px;font-size:15px}.tour-callout p{color:var(--text-muted,#cfcdd6);margin:0 0 12px;font-size:13px;line-height:1.45}.tour-step-n{letter-spacing:.5px;text-transform:uppercase;color:var(--coral);font-size:10px;font-weight:700}.tour-actions{align-items:center;gap:8px;display:flex}.tour-spacer{flex:1}.tour-actions button{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);color:var(--text);padding:5px 12px;font-size:12px}.tour-skip{color:var(--text-faint)}.tour-next{background:var(--coral);border-color:var(--coral);color:#16131a;font-weight:600}.tour-next:hover,.tour-actions button:hover{filter:brightness(1.08)}.patch-assign{align-items:center;gap:6px;margin-right:8px;display:flex}.patch-assign label{color:var(--text-faint);align-items:center;gap:3px;font-size:10px;display:inline-flex}.aim-wrap{align-items:center;gap:5px;margin-top:4px;display:flex}.aim-pad{cursor:crosshair;background:#10151c;border:1px solid #35506e;border-radius:5px;flex:none;width:44px;height:44px;position:relative}.aim-pad:before{content:"";background:radial-gradient(circle,#1c2836 0%,#141b24 70%);border:1px dashed #35506e;border-radius:50%;position:absolute;inset:3px}.aim-pad:after{content:"";background:#4a688f;border-radius:50%;width:3px;height:3px;margin:-1.5px 0 0 -1.5px;position:absolute;top:50%;left:50%}.aim-dot{z-index:1;background:#6aa9ff;border-radius:50%;width:8px;height:8px;margin:-4px 0 0 -4px;position:absolute;box-shadow:0 0 6px #6aa9ff}.aim-read{color:#7fb0e8;flex-direction:column;gap:2px;font-size:9px;display:inline-flex}.aim-field{justify-content:space-between;gap:5px;min-width:66px;display:inline-flex}.aim-field b{text-align:right;font-variant-numeric:tabular-nums;color:#cfe4fb;min-width:38px}.aim-reset{cursor:pointer;color:#9fc4e8;background:#24252b;border:1px solid #35506e;border-radius:4px;padding:1px 4px;font-size:11px;line-height:1}.patch-assign select{border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid var(--border);color:var(--text);padding:2px 4px;font-size:11px}.play-toggle{border-radius:var(--radius-sm);font-variant-numeric:tabular-nums;padding:3px 10px;font-size:11px}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;min-height:0;display:flex;overflow:hidden}.panel>header{border-bottom:1px solid var(--border);flex:none;align-items:baseline;gap:10px;padding:10px 14px;display:flex}.panel>header h2{text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim);font-size:13px}.panel>header .sub{color:var(--text-faint);font-size:12px}.panel .scroll{min-height:0;padding:12px 14px;overflow:auto}.lib-list,.patched-list{flex-direction:column;gap:6px;display:flex}.section-label.rig-label{justify-content:space-between;align-items:center;gap:8px;display:flex}.rig-readdress{font:inherit;text-transform:none;letter-spacing:0;color:var(--text);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:3px 9px;font-size:11px}.rig-readdress:hover{border-color:var(--coral);color:var(--coral)}.show-meta{flex-direction:column;gap:5px;margin-bottom:12px;display:flex}.show-meta label{align-items:center;gap:6px;display:flex}.show-meta label span{color:var(--text-faint);text-transform:uppercase;letter-spacing:.3px;flex:0 0 58px;font-size:10px}.show-meta label input{min-width:0;font:inherit;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);flex:auto;padding:3px 6px;font-size:12px}.truss-editor{flex-direction:column;gap:5px;margin-bottom:10px;display:flex}.truss-row{align-items:center;gap:6px;display:flex}.truss-row .truss-name{min-width:0;font:inherit;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);flex:auto;padding:3px 6px;font-size:12px}.truss-row label{color:var(--text-faint);align-items:center;gap:3px;font-size:10px;display:inline-flex}.truss-row label input{width:46px;font:inherit;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px 4px;font-size:11px}.truss-del{width:22px;height:22px;color:var(--text-faint);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;flex:none;padding:0;font-size:12px}.truss-del:hover:not(:disabled){color:var(--coral);border-color:var(--coral)}.truss-del:disabled{opacity:.35;cursor:not-allowed}.batch-bar{background:var(--coral-soft);border:1px solid var(--coral);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:8px;margin:-2px 0 8px;padding:6px 8px;display:flex}.batch-n{color:var(--text);font-size:11px;font-weight:600}.batch-bar label{color:var(--text-faint);align-items:center;gap:4px;font-size:10px;display:inline-flex}.batch-bar select{font:inherit;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:2px 5px;font-size:11px}.rig-tools{align-items:center;gap:6px;display:flex}.rig-truss{font:inherit;text-transform:none;letter-spacing:0;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:3px 6px;font-size:11px}.panel>header .lib-search{flex:auto;align-self:center;max-width:none;margin-right:34px}.truss-strip{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elev);height:62px;margin:2px 0 14px;position:relative}.truss-bar{background:linear-gradient(#3a3a44,#222229);border:1px solid #14141a;border-radius:3px;height:6px;position:absolute;top:42%;left:3%;right:3%;transform:translateY(-50%)}.truss-fx{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:3px;display:flex;position:absolute;top:42%;transform:translate(-50%,-50%)}.truss-fx:active{cursor:grabbing}.truss-fx-dot{background:linear-gradient(#50505a,#2c2c33);border:1px solid #14141a;border-radius:5px;width:20px;height:20px;box-shadow:0 1px 3px #00000080}.truss-fx.selected .truss-fx-dot{border-color:var(--coral);box-shadow:0 0 0 2px var(--coral-soft)}.truss-fx-lbl{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:10px}.truss-fx.selected .truss-fx-lbl{color:var(--coral)}.lib-item,.patched-item{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:8px 10px;padding:8px 10px;display:flex}.patched-item .patch-assign{margin-right:auto}.patched-item.selected{border-color:var(--coral);background:var(--coral-soft)}.lib-item .meta,.patched-item .meta{flex:1;min-width:0}.patched-item .meta{flex:100%}.lib-item .name,.patched-item .name{font-size:13px}.lib-item .detail,.patched-item .detail{color:var(--text-faint);font-size:11px}.blind-badge{letter-spacing:.5px;color:#fff;background:#d23b30;border-radius:4px;padding:1px 7px;font-size:10px;font-weight:700;animation:1.4s ease-in-out infinite blindpulse}.badge{text-transform:uppercase;letter-spacing:.4px;border:1px solid var(--border-strong);color:var(--text-dim);border-radius:4px;padding:1px 6px;font-size:10px}.badge.builtin{color:var(--text-faint)}.badge.ofl{color:#6ec6ff;border-color:#3a5568}.badge.gdtf{color:#b98cff;border-color:#4a3a68}.section-label{text-transform:uppercase;letter-spacing:.6px;color:var(--text-faint);margin:4px 0 8px;font-size:11px}.section-label:not(:first-child){margin-top:18px}.section-label.lib-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.lib-search{text-transform:none;letter-spacing:0;border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid var(--border);min-width:0;max-width:60%;color:var(--text);flex:auto;padding:4px 8px;font-size:11px}.lib-search:focus{border-color:var(--coral);outline:none}.lib-group{margin-bottom:10px}.lib-group-title{letter-spacing:.5px;text-transform:uppercase;color:var(--text-muted,#b8b6c0);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;width:100%;margin:10px 0 5px;padding:2px 0;font-size:10px;font-weight:700;display:flex}.lib-group-title:hover{color:var(--text)}.lib-caret{font-size:9px;transition:transform .12s;display:inline-block}.lib-caret.open{transform:rotate(90deg)}.lib-group-n{color:var(--text-faint);background:var(--bg-input);border-radius:8px;padding:0 6px;font-size:9px;font-weight:600}.lib-add{color:var(--coral);border:1px solid var(--coral);border-radius:var(--radius-sm);cursor:pointer;background:0 0;flex:none;padding:3px 10px;font-size:11px;font-weight:600}.lib-add:hover{background:var(--coral);color:#16131a}.dmx-grid{grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:3px;display:grid}.dmx-cell{aspect-ratio:1;background:var(--bg-elev);border-radius:3px;justify-content:center;align-items:flex-end;min-width:0;display:flex;position:relative;overflow:hidden}.dmx-cell.patched{cursor:pointer}.dmx-cell.patched:hover{box-shadow:inset 0 0 0 1.5px var(--text-faint)}.dmx-cell.owned{background:var(--coral-soft);box-shadow:inset 0 0 0 1.5px var(--coral)}.dmx-cell.owned.patched:hover{box-shadow:inset 0 0 0 1.5px var(--coral)}.dmx-cell .fill{background:var(--coral);opacity:.42;position:absolute;bottom:0;left:0;right:0}.dmx-cell.editing .fill{opacity:1}.dmx-cell.editing{z-index:1;box-shadow:inset 0 0 0 1.5px #ffe2d8,0 0 5px #ff7a5aa6}.dmx-cell.editing.patched:hover{box-shadow:inset 0 0 0 1.5px #fff,0 0 5px #ff7a5acc}.dmx-cell .ch{text-align:center;z-index:1;color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:8px;line-height:1;position:absolute;top:2px;left:0;right:0}.dmx-cell.active .ch{color:#ffffffe6;text-shadow:0 1px 1px #0009}.dmx-cell .val{z-index:1;color:#fff;text-shadow:0 1px 2px #000000e6;font-variant-numeric:tabular-nums;padding-bottom:3px;font-size:11px;font-weight:600;position:relative}.stage{border-radius:var(--radius);background:radial-gradient(120% 90% at 50% 0,#14141b 0%,#0b0b0f 70%);width:100%;height:100%;position:relative;overflow:hidden}.stage svg{width:100%;height:100%;display:block}.v2-title{fill:var(--text-dim);letter-spacing:.5px;text-transform:uppercase;font-size:15px;font-weight:700}.v2-stage{fill:#191922;stroke:#33343e;stroke-width:1px}.v2-zone{fill:#55565f;letter-spacing:1px;font-size:12px}.v2-lip{stroke:#6a6b74;stroke-width:2px}.v2-floor{stroke:#33343e;stroke-width:1.5px}.v2-truss{stroke:#565761;stroke-width:2px}.v2-truss.foh{stroke:#7a6bb0;stroke-dasharray:6 4}.v2-truss-bar{fill:#4a4b55;stroke:#2a2b31}.v2-truss-bar.foh{fill:#5a4f7e}.v2-trusslbl{fill:var(--text-faint);font-size:11px;font-weight:600}.v2-fx{cursor:pointer}.v2-fxlbl{font-size:12px}.v2-fxlbl.sel{fill:var(--coral);font-weight:600}.v2-sidetoggle{z-index:5;color:var(--text);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:3px 9px;font-size:11px;position:absolute;bottom:10px;right:10px}.v2-sidetoggle:hover{border-color:var(--coral)}.v2-reset{z-index:5;color:var(--text);background:var(--bg-elev);border:1px solid var(--coral);border-radius:var(--radius-sm);cursor:pointer;padding:3px 9px;font-size:11px;position:absolute;bottom:10px;left:10px}.prog-empty{color:var(--text-faint);font-size:13px;line-height:1.5}.fader-row{align-items:center;gap:10px;margin-bottom:10px;display:flex}.fader-row label{width:90px;color:var(--text-dim);font-size:12px}.fader-row input[type=range]{flex:1}.fader-row .num{text-align:right;font-variant-numeric:tabular-nums;width:40px;font-size:12px}.row-actions{gap:8px;margin-bottom:14px;display:flex}.swatch{border:1px solid var(--border-strong);border-radius:4px;flex:none;width:16px;height:16px}.view-toggle{background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--border);gap:3px;padding:2px;display:flex}.view-toggle button{color:var(--text-dim);background:0 0;border:none;padding:2px 10px;font-size:11px}.view-toggle button.active{background:var(--coral);color:#1a1113;font-weight:600}.body-desk{flex-direction:column;display:flex}.desk-top{gap:var(--gap);flex:auto;grid-template-columns:1fr minmax(240px,300px);min-height:0;display:grid}.desk-dock{margin-top:var(--gap);flex:none}.qd{--key-face:linear-gradient(180deg, #f4f2ec, #dddbd2);--key-face-hover:linear-gradient(180deg, #fffffb, #e8e6dd);--key-edge:#9a978d;--key-text:#2c2b27;--led:#2ea6ff;--desk-red:linear-gradient(180deg, #ec5646, #c9352a);color:var(--key-text);background:linear-gradient(#d8d7d1 0%,#c4c3bc 55%,#b3b2aa 100%);border:1px solid #8b897f;border-radius:12px;overflow:auto;box-shadow:inset 0 1px #ffffff80}.qd-screen{background:#0d0d12;border:1px solid #2a2a30;border-radius:8px;margin:10px 10px 0;padding:8px 12px}.qd-screen-head{align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.qd-brand{color:#1b1b1d;font-size:13px;font-weight:700}.qd-titan{color:#4a4a4c;letter-spacing:.5px;font-size:10px;font-weight:700}.qd-wip{color:#b98cff;border:1px solid #4a3a68;border-radius:4px;margin-left:auto;padding:0 6px;font-size:10px}.qd-showlib{flex-direction:column;gap:10px;height:100%;display:flex}.qd-showlib-head{color:var(--qd-fg,#cfe);justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.qd-slk-btn{color:#cfe;cursor:pointer;background:#1c2733;border:1px solid #35506a;border-radius:5px;padding:4px 10px;font-size:11px}.qd-slk-btn:hover{background:#24313f}.qd-showlib-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));align-content:start;gap:8px;display:grid;overflow:auto}.qd-showcard{text-align:left;color:#bcd;cursor:pointer;background:#131c26;border:1px solid #2b3d50;border-radius:7px;flex-direction:column;gap:4px;padding:9px 11px;display:flex}.qd-showcard:hover{background:#182430;border-color:#4d7aa8}.qd-showcard b{color:#eaf3ff;font-size:12.5px}.qd-showcard small{color:#86a0b8;font-size:10.5px;line-height:1.35}.qd-fixtures{flex-wrap:wrap;gap:6px;display:flex}.qd-fx{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;align-items:flex-start;gap:1px;padding:5px 9px;line-height:1.15;display:flex}.qd-fx.sel{border-color:var(--coral);background:var(--coral-soft)}.qd-fx-name{color:var(--text);font-size:12px}.qd-fx-aimicon{color:#7fb0e8;margin-left:5px;font-size:10px}.qd-fx-def{color:var(--text-faint);font-size:10px}.qd-fx-attrs{letter-spacing:.4px;gap:2px;margin-top:2px;font-size:8px;font-weight:700;display:flex}.qd-fx-attrs span{color:#ffffff29}.qd-fx-attrs span.on{color:#c8dcf5e6}.fx-aim-bar{background:#12181f;border:1px dashed #35506e;border-radius:6px;justify-content:center;align-items:center;gap:10px;margin:4px 6px 0;padding:6px 8px;display:flex}.fx-aim-cap{color:#7fb0e8;white-space:nowrap;font-size:10px;font-weight:700}.viz-aim{z-index:5;background:#0a0e14f0;border:1px solid #35506e;border-radius:8px;align-items:center;gap:8px;padding:7px 9px;display:flex;position:absolute;bottom:10px;left:10px}.viz-aim .fx-aim-cap,.viz-aim .viz-aim-cap{color:#7fb0e8;white-space:nowrap;font-size:10px;font-weight:700}.viz-popout{background:var(--pwa-bg,#0b131f);position:fixed;inset:0}.qscreen--ext{height:100%}.viz-win{flex-direction:column;width:100%;height:100%;min-height:0;display:flex}.viz-win-tools{border-bottom:1px solid var(--border);flex-wrap:wrap;flex:none;align-items:center;gap:6px;padding:4px 8px;display:flex}.viz-hide{color:var(--text-dim);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:4px;margin-left:2px;padding:2px 7px;font-size:12px;line-height:1}.viz-hide:hover{color:var(--text);border-color:var(--coral)}.viz-win-stage{flex:1;min-height:0;position:relative;overflow:hidden}.viz-win-stage>:not(.viz-aim){width:100%;height:100%}.qd-muted{color:var(--text-faint);font-size:12px}.qd-views{flex-wrap:wrap;align-items:center;gap:3px;margin-left:auto;display:flex}.qd-views-cap{letter-spacing:.4px;color:#3a3a3c;text-transform:uppercase;margin-right:1px;font-size:8.5px;font-weight:700}.qd-view{font:inherit;color:#123;cursor:pointer;background:linear-gradient(#eaf6ff,#cfe6f7);border:1px solid #6ba8d6;border-top-color:#f7fdff;border-radius:4px;padding:2px 7px;font-size:9.5px;font-weight:600}.qd-view:hover{background:linear-gradient(#f4fbff,#dcedfa)}.qd-view-rec{color:#d7d8dc;background:linear-gradient(#3d3e44,#2a2b30);border-color:#55565d #17181c #17181c}.qd-view-rec:hover{background:linear-gradient(#47484f,#303138)}.qd-view-rec.arm{color:#fff;background:linear-gradient(#ff6b5e,#e2483b);border-color:#ff9c92 #a5271c #a5271c;animation:1s steps(2,jump-none) infinite qd-rec-blink}@keyframes qd-rec-blink{50%{filter:brightness(1.25)}}.qd-tabs{flex-wrap:wrap;gap:3px;margin-left:8px;display:flex}.qd-tabs button{font:inherit;color:#e6e6ea;cursor:pointer;background:linear-gradient(#3d3e44,#2a2b30);border:1px solid #17181c;border-top-color:#55565d;border-radius:4px;padding:3px 9px;font-size:10px;font-weight:600}.qd-tabs button.on{color:#123;background:linear-gradient(#d3edfe,#bfe3fb);border-color:#f2fbff #6ba8d6 #6ba8d6;font-weight:700}.qd-tab-colour.on,.qd-tab-position.on,.qd-tab-gobo.on,.qd-tab-beam.on,.qd-tab-intensity.on{color:#123;background:linear-gradient(#d3edfe,#bfe3fb);border-color:#6ba8d6}.qd-palettes{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.qd-pal-rec{flex:none}.qd-pal{border:1px solid var(--border);border-radius:var(--radius-sm);align-items:stretch;display:inline-flex;overflow:hidden}.qd-pal-apply{font:inherit;color:var(--text);background:var(--bg-elev);cursor:pointer;border:none;padding:5px 10px;font-size:12px}.qd-pal-apply:hover:not(:disabled){background:var(--bg-input)}.qd-pal-apply:disabled{opacity:.4;cursor:not-allowed}.qd-pal-del{font:inherit;color:var(--text-faint);background:var(--bg-elev);border:none;border-left:1px solid var(--border);cursor:pointer;padding:0 7px;font-size:11px}.qd-pal-del:hover{color:var(--coral)}.qd-playhead{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.qd-playhead .qd-caplabel{margin:0}.qd-pages{align-items:center;gap:6px;display:flex}.qd-pages .qd-key{padding:3px 8px;font-size:10px}.qd-page-n{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:10px}.qd-hw{grid-template-columns:minmax(210px,1fr) minmax(300px,1.5fr) minmax(220px,1fr);gap:18px;padding:16px;display:grid}.qd-col{min-width:0}.qd-caplabel{text-transform:uppercase;letter-spacing:.6px;color:#5c5a52;margin:0 0 6px;font-size:10px;font-weight:600}.qd-key{font:inherit;color:var(--text);cursor:pointer;text-align:center;background:linear-gradient(#33333f,#262630);border:1px solid #14141a;border-top-color:#45454f;border-radius:5px;padding:7px 6px;font-size:11px}.qd-hw .qd-key{color:var(--key-text);background:var(--key-face);border:1px solid var(--key-edge);border-top-color:#fff;box-shadow:0 1px 1px #00000038,inset 0 1px #fff9}.qd-hw .qd-key:hover{background:var(--key-face-hover)}.qd-hw .qd-key.inert{color:#8a887f;cursor:default}.qd-hw .qd-key:disabled{opacity:.5;cursor:not-allowed}.qd-attrs{grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:14px;display:grid}.qd-attr{border-bottom:3px solid var(--k);position:relative}.qd-hw .qd-attr.on{box-shadow:0 0 0 2px var(--led), inset 0 1px 0 #fff;background:linear-gradient(#fffef8,#e9e7dd);font-weight:700}.qd-prog{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.qd-key.rec:before{content:"";vertical-align:middle;background:#e33;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block;box-shadow:0 0 4px #e33}.qd-wheels{justify-content:center;align-items:flex-start;gap:16px;min-height:100px;margin-bottom:14px;display:flex}.qd-wheel{flex-direction:column;align-items:center;gap:5px;width:84px;display:flex}.qd-dial{background:radial-gradient(circle at 50% 35%,#f4f3f0,#bdbbb3 58%,#8f8d85);border:1px solid #7d7b73;border-radius:50%;width:58px;height:58px;position:relative;box-shadow:inset 0 2px 4px #ffffffb3,0 2px 3px #0000004d}.qd-dial:after{content:"";background:radial-gradient(circle at 50% 38%,#6f6d66,#38372f);border-radius:50%;width:15px;height:15px;position:absolute;top:66%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 1px 2px #0009}.qd-dial-tick{transform-origin:50% 24px;background:#c9362b;border-radius:2px;width:3px;height:20px;margin-left:-1.5px;position:absolute;top:5px;left:50%}.qd-wheel input[type=range]{width:100%}.qd-wheel-cap{color:#3a3934;text-transform:capitalize;font-size:11px;font-weight:600}.qd-wheel-val{color:#5c5a52;font-variant-numeric:tabular-nums;font-size:10px}.qd-faders{grid-template-columns:repeat(10,1fr);gap:6px;display:grid}.qd-fader{flex-direction:column;align-items:center;gap:5px;display:flex}.qd-flash{color:#dff1ff;cursor:pointer;background:linear-gradient(#1c3a68,#112548);border:1px solid #0c1830;border-radius:4px;width:100%;padding:5px 0;font-size:10px;box-shadow:inset 0 0 6px #2ea6ff73}.qd-flash.on{color:#04203a;background:linear-gradient(#3ab0ff,#1878d0);font-weight:700;box-shadow:0 0 8px #2ea6ffcc}.qd-flash.empty{opacity:.4;box-shadow:none;cursor:default}.qd-fader input[type=range]{writing-mode:vertical-lr;direction:rtl;width:10px;height:78px}.qd-fader-cap{color:#5c5a52;font-size:9px}.qd-transport{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px;display:grid}.qd-hw .qd-key.go{background:var(--desk-red);color:#fff;text-shadow:0 1px 1px #0006;border-color:#7a231c;grid-column:1/-1;padding:12px;font-size:14px;font-weight:700}.qd-selkeys{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:8px;display:grid}.qd-keypad{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px;display:grid}.qd-hw .qd-key.num{padding:11px 6px;font-size:14px;font-weight:600}.qd-bigkeys{grid-template-columns:1fr 1fr;gap:6px;display:grid}.qd-hw .qd-key.locate{background:var(--desk-red);color:#fff;text-shadow:0 1px 1px #0006;border-color:#7a231c;padding:12px;font-weight:700}.qd-hw .qd-key.clear{padding:12px}.qscreen{--tt-bg:#202021;--tt-panel:#242425;--tt-blue:#cfeafd;--tt-blue-edge:#6ba8d6;--tt-ink:#1b1b1d;background:var(--tt-bg);border-radius:var(--radius);border:1px solid #000;flex-direction:column;min-height:0;font-family:Segoe UI,Tahoma,Verdana,sans-serif;display:flex;overflow:hidden}.qscreen-head{color:#1b1b1d;background:linear-gradient(#d1d1d1,#9a9a9a 55%,#8d8d8d);border-bottom:1px solid #333;flex-wrap:wrap;flex:none;align-items:center;gap:8px;padding:4px 10px;display:flex}.qscreen-main{flex:1;min-height:0;display:flex}.qscreen-body{background:var(--tt-bg);flex:1;min-height:0;position:relative;overflow:hidden}.qd-win{border:1px solid #3a4653;border-radius:4px;flex-direction:column;min-height:0;padding:2px;display:flex;position:absolute;overflow:hidden}.qd-win.focused{outline:1.5px solid var(--coral,#ff6b5e);outline-offset:-1.5px;border-radius:4px}.qd-win-bar{cursor:move;touch-action:none;flex:none;align-items:center;gap:6px;padding:1px 4px 2px;display:flex;position:relative}.qd-win-grip{cursor:nwse-resize;z-index:4;touch-action:none;background:linear-gradient(135deg, transparent 45%, var(--coral,#ff6b5e) 45%, var(--coral,#ff6b5e) 60%, transparent 60%);opacity:.5;width:16px;height:16px;position:absolute;bottom:0;right:0}.qd-win-grip:hover{opacity:1}.qd-win-name{letter-spacing:.3px;color:#9fb4c6;text-transform:uppercase;font-size:9.5px;font-weight:700}.qd-win-tools{gap:2px;margin-left:auto;display:flex}.qd-win-btn{color:#9fb4c6;cursor:pointer;background:#1a2530;border:1px solid #2f4457;border-radius:3px;padding:1px 5px;font-size:10px;line-height:1}.qd-win-btn:hover{color:#d8e6f2;background:#24333f}.qd-win-body{flex:1;min-height:0;padding:4px 6px;overflow:auto}.qd-cog{z-index:6;background:#0f1620;border:1px solid #35506a;border-radius:6px;grid-template-columns:repeat(3,1fr);gap:3px;padding:5px;display:grid;position:absolute;top:20px;right:4px;box-shadow:0 6px 18px #00000080}.qd-cog-cell{color:#bcd;cursor:pointer;background:#1a2530;border:1px solid #2f4457;border-radius:3px;justify-content:center;align-items:center;width:22px;height:18px;font-size:11px;line-height:1;display:flex}.qd-cog-cell:hover{background:#24333f}.qd-cog-cell.on{color:#fff;background:#3a86c0;border-color:#6ba8d6}.qd-cog-cell:disabled{opacity:.28;cursor:not-allowed}.qd-cog-move{color:#cfe;border:1px solid var(--pwa-accent,#3d6ea5);cursor:pointer;background:#16283c;border-radius:4px;grid-column:1/-1;margin-top:3px;padding:3px 6px;font-size:10px;font-weight:600}.qd-cog-move:hover{background:#1d3350}.qd-ext-empty{text-align:center;color:#7f95a8;justify-content:center;align-items:center;padding:10%;font-size:13px;line-height:1.5;display:flex;position:absolute;inset:0}.qd-tab-add{color:#123;cursor:pointer;background:linear-gradient(#eaf6ff,#cfe6f7);border:1px solid #6ba8d6;border-top-color:#f7fdff;border-radius:4px;margin-left:4px;padding:2px 7px;font-size:11px;font-weight:700}.qd-tab-add:disabled{opacity:.4;cursor:default}.qd-ws-grid{grid-template-columns:repeat(auto-fill,minmax(94px,1fr));align-content:start;gap:5px;display:grid}.qd-cell{background:linear-gradient(#9a9494 0%,#b6b0b0 46%,#d8d5d5 54%,#efeeee 100%);border:1px solid #6c6767;border-top-color:#fafafa;border-radius:4px;min-height:46px;position:relative;overflow:hidden;box-shadow:0 1px 2px #0006}.qd-cell-hit{width:100%;min-height:46px;color:var(--tt-ink);text-align:center;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:none;justify-content:center;align-items:center;padding:5px 6px 12px;font-size:12px;font-weight:600;line-height:1.15;display:flex}.qd-cell-hit:hover{background:0 0}.qd-cell-hit:disabled{opacity:.55;cursor:not-allowed}.qd-ipcg{letter-spacing:.5px;pointer-events:none;justify-content:center;gap:2px;font-size:7px;font-weight:700;display:flex;position:absolute;bottom:1px;left:0;right:0}.qd-ipcg span{color:#1e1e202e}.qd-ipcg span.on{color:#141418eb}.qd-cell-edit,.qd-cell-del{color:#333;cursor:pointer;opacity:0;background:#ffffff8c;border:none;border-radius:3px;width:16px;height:16px;padding:0;font-size:10px;line-height:1;transition:opacity .1s;position:absolute;top:2px}.qd-cell-edit{right:18px}.qd-cell-del{right:2px}.qd-cell:hover .qd-cell-edit,.qd-cell:hover .qd-cell-del{opacity:1}.qd-cell-edit:hover,.qd-cell-del:hover{color:#000}.qd-cell.active{border-color:var(--tt-blue-edge);box-shadow:0 0 0 1px var(--tt-blue-edge), 0 1px 2px #0006;background:linear-gradient(#bfe3fb 0%,#d3edfe 50%,#eaf7ff 100%);border-top-color:#f2fbff}.qd-cell.rec{color:#8a8a8c;cursor:pointer;min-height:46px;box-shadow:none;background:#2a2a2c;border:1px dashed #45454a;font-size:11px;font-weight:600}.qd-cell.rec:hover:not(:disabled){color:#cfeafd;border-color:#7fb8dd}.qd-cell.rec:disabled{opacity:.4;cursor:not-allowed}.audio-panel{color:#dcdce2;flex-direction:column;gap:8px;display:flex}.audio-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.audio-panel button{color:#e8e8ec;cursor:pointer;background:linear-gradient(#3d3e44,#2a2b30);border:1px solid #17181c;border-top-color:#55565d;border-radius:4px;padding:4px 9px;font-size:11px}.audio-panel button:hover:not(:disabled){border-color:#7fb8dd}.audio-lbl{color:#9aa0a8;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:11px;overflow:hidden}.audio-enable{align-items:center;gap:4px;font-size:11px;display:inline-flex}.qd-usernum{color:#9fc4e8;text-align:center;background:#2f3b4a;border-radius:3px;min-width:15px;margin-right:5px;padding:0 3px;font-size:9px;font-weight:800;display:inline-block}.audio-s2l-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.audio-demo{padding:2px 8px;font-size:11px}.audio-transport{gap:8px}.audio-play{flex:none;width:30px;font-size:12px}.audio-seek{flex:auto;min-width:80px}.audio-time{color:#9aa0a8;font-variant-numeric:tabular-nums;min-width:34px;font-size:11px}.audio-gain span{font-size:11px}.audio-gain input[type=range]{width:120px}.audio-bpm{color:#7fc0f0;align-items:center;gap:6px;margin-left:auto;font-size:12px;font-weight:700;display:inline-flex}.audio-bands{align-items:stretch;gap:8px;display:flex}.audio-band{flex-direction:column;flex:1 1 0;align-items:center;gap:4px;display:flex}.audio-band.hit .ab-hz{color:#ff5a4d}.ab-hz{color:#9aa0a8;font-size:10px}.ab-meter{background:#17181c;border:1px solid #2c2d32;border-radius:3px;width:22px;height:90px;position:relative;overflow:hidden}.ab-fill{background:linear-gradient(#ff5a4d,#ffb054 60%,#4ad06a);position:absolute;bottom:0;left:0;right:0}.ab-thresh{background:#7fc0f0;height:2px;position:absolute;left:-1px;right:-1px}.ab-tset{width:64px}.ab-cue{max-width:72px;font-size:10px}.audio-band.off{opacity:.45}.ab-switches{color:#9aa0a8;flex-direction:column;gap:1px;font-size:9px;display:flex}.ab-switches label{cursor:pointer;align-items:center;gap:3px;display:inline-flex}.ab-switches input{margin:0}.pwa-only{position:relative;border:1px dashed var(--coral)!important}.pwa-tag{background:var(--coral);color:#1a1a1f;letter-spacing:.5px;vertical-align:middle;cursor:help;border-radius:3px;margin-left:6px;padding:0 4px;font-size:8px;font-weight:800;display:inline-block}.hw-only{position:relative;border:1px dashed #6aa9ff!important}.hw-tag{color:#10131a;letter-spacing:.5px;vertical-align:middle;cursor:help;background:#6aa9ff;border-radius:3px;margin-left:6px;padding:0 4px;font-size:8px;font-weight:800;display:inline-block}.pb-grid{flex-wrap:wrap;align-content:flex-start;gap:8px;padding:2px;display:flex}.pb-card{background:#1b1c21;border:1px solid #2c2d32;border-radius:6px;flex-direction:column;gap:6px;width:150px;min-height:52px;padding:6px 8px;display:flex}.pb-card.connected{border-color:var(--coral);box-shadow:0 0 0 1px var(--coral) inset}.pb-card.empty{opacity:.35;justify-content:center;align-items:center;min-height:40px}.pb-card.rec{color:var(--coral);cursor:pointer;background:0 0;border-style:dashed;justify-content:center;align-items:center;font-weight:700}.pb-card.rec:disabled{opacity:.4;cursor:default}.pb-head{align-items:center;gap:4px;display:flex}.pb-fire{cursor:pointer;color:#e6e6ea;text-align:left;background:0 0;border:0;flex:auto;align-items:center;gap:6px;min-width:0;padding:2px;display:flex}.pb-slot{color:#1a1a1f;background:#8aa0b8;border-radius:3px;flex:none;padding:0 4px;font-size:10px;font-weight:800}.pb-slot.dim{color:#8a8b92;background:#3a3b42}.pb-name{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.pb-ico{color:#9aa0a8;cursor:pointer;background:0 0;border:0;flex:none;padding:2px 3px;font-size:12px}.pb-ico:hover{color:var(--coral)}.pb-ico.sm{font-size:10px}.pb-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pb-badge{color:#9aa0a8;background:#24252b;border-radius:3px;padding:1px 5px;font-size:9px}.pb-seg{border:1px solid #34353c;border-radius:4px;display:inline-flex;overflow:hidden}.pb-seg button{color:#9aa0a8;cursor:pointer;background:#24252b;border:0;padding:1px 6px;font-size:9px}.pb-seg button.on{background:var(--coral);color:#1a1a1f;font-weight:700}.pb-bpm{color:#9aa0a8;align-items:center;gap:3px;font-size:9px;display:inline-flex}.pb-bpm input{color:#e6e6ea;background:#17181c;border:1px solid #34353c;border-radius:3px;width:44px;padding:1px 3px;font-size:10px}.pb-tap{color:#cfe;cursor:pointer;background:#24313f;border:1px solid #3a5570;border-radius:3px;margin-left:4px;padding:2px 7px;font-size:9px;font-weight:700}.pb-tap:hover{background:#2c3d4e}.pb-tap:active{color:#fff;background:#3a86c0}.pb-steps{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.pb-steps li{color:#b7b8be;border-radius:3px;align-items:center;gap:5px;padding:1px 3px;font-size:10px;display:flex}.pb-steps li.live{color:#ffb98a;background:#2a2119}.pb-stepno{text-align:right;color:#7a7b82;flex:none;width:14px}.pb-stepname{text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.qscreen-soft{background:#242425;border-left:1px solid #000;flex-direction:column;flex:0 0 134px;gap:2px;padding:4px 6px 4px 4px;display:flex}.qsk-menu{letter-spacing:.4px;color:#b7c9d6;text-transform:uppercase;text-align:center;flex:none;padding:1px 4px 3px;font-size:9px;font-weight:700}.qskrow{flex:1 1 0;align-items:center;gap:6px;min-height:0;display:flex;overflow:hidden}.qsk-lbl{min-width:0;color:var(--text);text-align:right;white-space:nowrap;flex-direction:column;flex:auto;justify-content:center;align-items:flex-end;font-size:10px;font-weight:600;line-height:1.1;display:flex;overflow:hidden}.qskrow,.qsk-lbl{color:#e6e6ea}.qskrow.info .qsk-lbl{color:#8b9099;font-weight:500}.qskrow.info .qsk-key{opacity:.4}.qsk-ref{letter-spacing:.4px;text-transform:uppercase;color:#8b9099;background:#ffffff0f;border:1px solid #3a4048;border-radius:3px;margin-left:5px;padding:0 4px;font-size:7.5px;font-weight:700}.qsk-opt{color:#7fc0f0;font-size:9px;font-weight:700}.qsk-key{color:#e8e8ec;cursor:pointer;background:linear-gradient(#3d3e44,#2c2d32 55%,#232429);border:1px solid #17181c;border-top-color:#55565d;border-radius:3px;flex:none;justify-content:center;align-self:stretch;align-items:center;width:22px;max-height:32px;font-size:11px;font-weight:700;display:flex;box-shadow:inset 0 1px #ffffff14,0 1px 2px #00000080}.qsk-key:hover:not(:disabled){border-color:#7fb8dd}.qsk-key:disabled{cursor:default}.qskrow.blank .qsk-key{opacity:.4}.qscreen-cmd{background:#1a1a1b;border-top:1px solid #000;flex:none;align-items:center;gap:6px;padding:5px 10px;font-family:Segoe UI,Tahoma,Verdana,sans-serif;font-size:12px;display:flex}.qcmd-prompt{color:#7fc0f0;font-weight:700}.qcmd-hint{color:#7c7c84;font-style:italic}.qcmd-line{align-items:baseline;gap:6px;display:inline-flex}.qcmd-kw{color:#7fc0f0;font-weight:600}.qcmd-sel,.qcmd-typed{color:#eaeaf0}.qcmd-typed{letter-spacing:.5px}.qcmd-cursor{background:#7fc0f0;width:7px;height:14px;animation:1s step-end infinite qblink}@keyframes qblink{50%{opacity:0}}.qscreen-spacer{flex:1}.qcmd-stat{color:#7c7c84;font-size:10px}.qcmd-stat.live{color:#8fd08f}.qpanel{background:#0f0f14;justify-content:safe center;align-items:safe center;min-height:0;padding:10px;display:flex;position:relative;overflow:auto;container-type:size}.qcal-bgtoggle{z-index:10;font:inherit;color:var(--text);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:3px 9px;font-size:11px;position:absolute;top:6px;right:10px}.qcal{aspect-ratio:1306/859;background:#17181d;border:1px solid #2a2b31;border-radius:10px;width:min(100%,152cqh);min-width:620px;position:relative;container-type:size}.qcal.bg{background:url(/quartz.png) 50%/100% 100% no-repeat}.cal-grid{gap:.18cqw;display:grid;position:absolute}.cal-frame{pointer-events:none;border:1px solid #ffffff29;border-radius:.7cqw;position:absolute}.qcal-zonetoggle{z-index:30;font:inherit;cursor:pointer;color:var(--text);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px 9px;font-size:11px;position:absolute;top:6px;right:10px}.qcal-zonetoggle:hover{border-color:var(--coral);color:var(--coral)}.cal-zones{z-index:25;pointer-events:none;position:absolute;inset:0}.cal-zone{background:#0a0a0e59;border-style:dashed;border-width:.22cqw;border-radius:.9cqw;position:absolute}.cal-zone .zname{letter-spacing:.2px;background:#0000008c;border-radius:.4cqw;padding:.1cqw .5cqw;font-size:1.25cqw;font-weight:700;position:absolute;top:.4cqw;left:.7cqw}.qcal .ck{cursor:pointer;border:1px solid #00000059;border-radius:.18cqw;justify-content:center;place-self:center;align-items:center;width:100%;height:100%;padding:0;transition:transform 80ms;display:flex;position:relative}.cal-grid.spread .ck{width:3.7cqw;height:4.05cqw}.qcal .ck:before{content:"";pointer-events:none;background:#ffffff0a;border:.55cqw solid #ffffff57;border-color:#ffffff57 #0000003d #00000057 #ffffff26;border-radius:0 0 .18cqw .18cqw;position:absolute;inset:36% 0 0}.qcal .ck.ledb:before{border-radius:.18cqw .18cqw 0 0;top:0;bottom:36%}.qcal .ck.assignable:after{content:"+";z-index:2;color:#fff6;font-size:1.6cqw;line-height:1;position:absolute;top:64%;left:50%;transform:translate(-50%,-50%)}.qcal .ck>.cktext,.qcal .ck>.cktext2{z-index:1;position:relative}.qcal .ckled{z-index:2}.qcal .ck-white{color:#222;background:#e9e6de;border-color:#c4c1b8}.qcal .ck-dark{color:#eaeaf0;background:#585862;border-color:#35353c}.qcal .ck-blue{background:#2a5aa0;border-color:#123056}.qcal .ck-red{background:var(--coral);color:#fff;border-color:#a3372c}.qcal .ck:hover:not(:disabled){z-index:3;transform:scale(1.06)}.qcal .ck:disabled{cursor:default;opacity:1}.cktext{letter-spacing:-.2px;font-size:1.05cqw;font-weight:600}.ck-white .cktext{color:#23231f}.cktext2{color:#9a9aa2;font-size:1.05cqw;font-weight:600;position:absolute;bottom:6%}.ck-white .cktext2{color:#8a897f}.ckled{background:#24242a;border-radius:50%;width:.9cqw;height:.9cqw;position:absolute;top:8%;left:50%;transform:translate(-50%)}.ck-white .ckled{background:#b8b7ad}.ck-red .ckled{background:#5a5a62}.ck.ledb .ckled{top:auto;bottom:10%}.ckled.on{background:#3ab2ff;box-shadow:0 0 .35cqw #cdeaff,0 0 1.9cqw #2ea6ff,0 0 3cqw #2ea6ff99}.ckled.on.red{background:#ff3b3b;box-shadow:0 0 .35cqw #ffd6d6,0 0 1.9cqw #ff2424,0 0 3cqw #ff282899}.ckled.on.blue{background:#3ab2ff;box-shadow:0 0 .35cqw #cdeaff,0 0 1.9cqw #2ea6ff,0 0 3cqw #2ea6ff99}.ckled.dim:not(.on){background:#1c6a99;box-shadow:0 0 .3cqw #3ab2ff80}.ckled.dim.red:not(.on){background:#9a2b2b;box-shadow:0 0 .3cqw #ff3b3b80}.ckled.dim.blue:not(.on){background:#1c6a99;box-shadow:0 0 .3cqw #3ab2ff80}.ckled.flash{animation:.85s ease-in-out infinite ckled-flash}.ckled.flash:not(.on){background:#2f6d92}.ckled.red.flash:not(.on){background:#8a2f2f}@keyframes ckled-flash{0%,to{opacity:.28}50%{opacity:1}}.ckhint{z-index:2;pointer-events:none;color:#ffffff80;font-size:1.15cqw;font-weight:800;line-height:1;position:absolute;top:3%;left:8%}.ck-white .ckhint{color:#00000061}.ck-avo .cktext{text-transform:lowercase;letter-spacing:-.3px;font-style:italic;font-weight:800}.calbig{cursor:pointer;background:linear-gradient(#e2483a,#b62e24);border:1px solid #7a231c;border-radius:.9cqw;transition:transform 80ms;position:absolute;box-shadow:inset 0 .15cqw #ffffff40}.calbig:hover:not(:disabled){transform:scale(1.05)}.calbig:disabled{opacity:.72;cursor:default}.cal-lbl{color:#e6e6ec;text-align:center;pointer-events:none;flex-direction:column;align-items:center;font-size:1.05cqw;line-height:1.08;display:flex;position:absolute}.cal-lbl.above{transform:translateY(-100%)}.cal-lbl.small{font-size:.86cqw;line-height:1.04}.cal-lbl .sub{color:#9a9aa2;display:none}.qcal.shift{outline:.25cqw solid var(--coral);outline-offset:-.25cqw}.cal-shift-badge{background:var(--coral);color:#1a1113;z-index:20;pointer-events:none;letter-spacing:.3px;border-radius:.7cqw;padding:.3cqw 1.1cqw;font-size:1.3cqw;font-weight:700;position:absolute;top:1.4%;left:50%;transform:translate(-50%);box-shadow:0 .3cqw 1cqw #0000008c}.cal-blind-badge{color:#fff;z-index:21;pointer-events:none;letter-spacing:.3px;background:#d23b30;border-radius:.7cqw;padding:.3cqw 1.1cqw;font-size:1.3cqw;font-weight:700;animation:1.4s ease-in-out infinite blindpulse;position:absolute;top:1.4%;left:50%;transform:translate(-50%);box-shadow:0 .3cqw 1cqw #0000008c}@keyframes blindpulse{50%{opacity:.55}}.qcal.swopping{outline-offset:-.25cqw;outline:.25cqw solid #ffb454}.cal-modes-badge{z-index:22;pointer-events:none;letter-spacing:.3px;align-items:center;gap:.5cqw;font-size:1.15cqw;font-weight:800;display:flex;position:absolute;top:1.4%;left:50%;transform:translate(-50%)}.cal-modes-badge span{border-radius:.7cqw;padding:.3cqw .9cqw;box-shadow:0 .3cqw 1cqw #0000008c}.cal-modes-badge .mb-avo{background:var(--coral);color:#1a1113}.cal-modes-badge .mb-flash{color:#fff;background:#3a86e0}.cal-modes-badge .mb-swop{color:#201401;background:#ffb454;animation:1.4s ease-in-out infinite blindpulse}.cal-modes-badge .mb-hint{color:#cfcfd6;background:#00000080;font-weight:600}.qcal.shift .cal-lbl .sub{color:var(--coral);font-weight:700;display:block}.qcal.shift .cal-lbl:has(.sub)>span:not(.sub){display:none}.qcal.shift .cal-lbl:not(:has(.sub))>span{opacity:.35}.calwheel{cursor:grab;touch-action:none;background:radial-gradient(circle at 42% 34%,#6a6b73,#3a3b42 62%,#26272c);border:1px solid #1c1d22;border-radius:50%;position:absolute;box-shadow:inset 0 .3cqw .6cqw #ffffff26,0 .3cqw .6cqw #00000080}.calwheel.idle{cursor:default;opacity:.8}.calwheel:active:not(.idle){cursor:grabbing}.calwheel-spin{pointer-events:none;position:absolute;inset:0}.calwheel-dot{aspect-ratio:1;background:#c9362b;border-radius:50%;width:13%;position:absolute;top:8%;left:50%;transform:translate(-50%);box-shadow:0 0 .6cqw #c9362bb3}.cal-faders{grid-template-rows:100%;grid-template-columns:repeat(10,1fr);display:grid;position:absolute;overflow:hidden}.cal-fader{justify-content:center;align-items:stretch;min-width:0;min-height:0;display:flex;position:relative}.cal-fader:before{content:"";z-index:0;background:#43434b;border-radius:.25cqw;width:.45cqw;margin-left:-.22cqw;position:absolute;top:2%;bottom:2%;left:50%}.cal-fader:after{content:"";opacity:.5;pointer-events:none;z-index:0;background:repeating-linear-gradient(#6f6f79 0 .09cqw,#0000 .09cqw 2.6cqw);width:2.2cqw;margin-left:-1.1cqw;position:absolute;top:3%;bottom:3%;left:50%}.cal-fader input[type=range]{z-index:2;writing-mode:vertical-lr;appearance:none;cursor:pointer;direction:rtl;background:0 0;width:3cqw;height:100%;position:relative}.cal-fader input[type=range]::-webkit-slider-thumb{appearance:none;background:repeating-linear-gradient(#0000006b 0 .12cqw,#ffffff0f .12cqw .5cqw),linear-gradient(#6c6c76,#2b2b32);border:1px solid #0d0d11;border-radius:.35cqw;width:3cqw;height:3.5cqw;transition:transform 80ms;box-shadow:0 .2cqw .45cqw #000000a6}.cal-fader input[type=range]::-moz-range-thumb{background:repeating-linear-gradient(#0000006b 0 .12cqw,#ffffff0f .12cqw .5cqw),linear-gradient(#6c6c76,#2b2b32);border:1px solid #0d0d11;border-radius:.35cqw;width:3cqw;height:3.5cqw}.cal-fader input[type=range]:hover:not(:disabled)::-webkit-slider-thumb{transform:scale(1.1)}.cal-fader input[type=range]:hover:not(:disabled)::-moz-range-thumb{transform:scale(1.1)}.cal-fader input[type=range]:disabled{opacity:.5}.cue-list{flex-direction:column;gap:6px;display:flex}.cue-item{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:10px;padding:8px 10px;display:flex}.cue-item.active{border-color:var(--coral);background:var(--coral-soft)}.cue-item .cue-num{background:var(--bg-input);width:22px;height:22px;color:var(--text-faint);font-variant-numeric:tabular-nums;border-radius:4px;flex:none;justify-content:center;align-items:center;font-size:11px;display:flex}.cue-item .cue-name{flex:1;font-size:13px}.run-transport{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:10px;margin-bottom:14px;padding:12px;display:flex}.run-nownext{gap:10px;display:flex}.run-live,.run-next{background:var(--bg-input);border-radius:var(--radius-sm);flex-direction:column;flex:1 1 0;gap:2px;min-width:0;padding:8px 10px;display:flex}.run-live{border:1px solid var(--coral)}.run-nownext .lbl{letter-spacing:.5px;color:var(--text-faint);font-size:9px}.run-nownext .val{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.run-gobar{align-items:stretch;gap:8px;display:flex}.run-go{letter-spacing:1px;color:#fff;background:var(--coral);border-radius:var(--radius);cursor:pointer;border:none;flex:auto;padding:14px 0;font-size:20px;font-weight:800}.run-go:hover{filter:brightness(1.08)}.run-go:active{transform:translateY(1px)}.run-step{color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;flex:0 0 52px;font-size:15px}.run-step:hover{border-color:var(--coral)}.run-fade{color:var(--text-faint);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;align-self:flex-start;padding:4px 8px;font-size:11px}.run-pblist{flex-direction:column;gap:5px;margin-bottom:12px;display:flex}.run-pb{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:8px;padding:5px 8px;display:flex}.run-pb.live{border-color:var(--coral);background:var(--coral-soft)}.run-pb-num{text-align:center;width:18px;color:var(--text-faint);font-variant-numeric:tabular-nums;flex:none;font-size:10px}.run-pb-flash{width:24px;height:24px;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;flex:none;padding:0;font-size:11px}.run-pb.live .run-pb-flash{color:var(--coral);border-color:var(--coral)}.run-pb-name{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;font-size:12px;overflow:hidden}.run-pb input[type=range]{flex:0 0 96px}.run-pb-pct{text-align:right;color:var(--text-faint);font-variant-numeric:tabular-nums;flex:0 0 26px;font-size:11px}.run-hint{color:var(--text-faint);font-size:11px}.fx-panel{flex-direction:column;gap:8px;display:flex}.fx-add{flex-wrap:wrap;gap:6px;display:flex}.fx-add button{border-radius:var(--radius-sm);color:var(--coral);border:1px solid var(--coral);cursor:pointer;background:0 0;padding:4px 10px;font-size:11px}.fx-add button:hover:not(:disabled){background:var(--coral);color:#16131a}.fx-add button:disabled{opacity:.4;cursor:not-allowed;color:var(--text-faint);border-color:var(--border)}.fx-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px}.fx-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.fx-type{color:var(--text);font-size:13px;font-weight:600}.fx-meta{color:var(--text-faint);font-size:11px}.fx-del{margin-left:auto;padding:2px 8px;font-size:11px}.fx-row{align-items:center;gap:10px;margin-bottom:6px;display:flex}.fx-row label{width:54px;color:var(--text-dim);font-size:12px}.fx-row input[type=range]{flex:1}.fx-row .num{text-align:right;font-variant-numeric:tabular-nums;width:58px;color:var(--text-faint);font-size:11px}.show-menu{align-items:center;gap:6px;display:flex}.menu-wrap{position:relative}.menu-pop{z-index:60;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:2px;min-width:232px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 10px 30px #00000073}.menu-pop button{text-align:left;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:6px 9px;display:flex}.menu-pop button:hover{background:var(--bg-input)}.menu-pop .mi-label{color:var(--text);font-size:12px}.menu-pop .mi-sub{color:var(--text-faint);font-size:10px}.console-picker{color:var(--text-faint);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;font-size:11px;display:flex}.q-keys{gap:8px;margin-bottom:14px;display:flex}.q-attrs{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.q-attrs button{flex:1;min-width:64px;padding:8px 6px;font-size:12px}.q-attrs button.active{background:var(--coral);border-color:var(--coral);color:#1a1113;font-weight:600}.q-wheels{justify-content:center;gap:14px;min-height:120px;padding:8px 0 16px;display:flex}.q-wheel{flex-direction:column;align-items:center;gap:6px;width:88px;display:flex}.q-wheel-dial{background:radial-gradient(circle at 50% 40%, var(--bg-input), var(--bg));border:2px solid var(--border-strong);border-radius:50%;width:60px;height:60px;position:relative}.q-wheel-dial .q-wheel-tick{background:var(--coral);transform-origin:50% 24px;width:3px;height:22px;transform:rotate(var(--v,0deg));border-radius:2px;margin-left:-1.5px;position:absolute;top:6px;left:50%}.q-wheel input[type=range]{width:100%}.q-wheel-label{color:var(--text-dim);text-transform:capitalize;font-size:11px}.q-wheel-val{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:11px}.q-palettes{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.q-palettes button{color:#fff;text-shadow:0 1px 2px #0009;flex:1;min-width:56px;font-size:12px}.q-playback{grid-template-columns:repeat(10,1fr);gap:6px;display:grid}.q-fader{flex-direction:column;align-items:center;gap:6px;display:flex}.q-flash{width:100%;padding:4px 0;font-size:11px}.q-fader input[type=range]{writing-mode:vertical-lr;direction:rtl;width:8px;height:90px}.qd-cell.legend-pick{outline:1px dashed var(--coral,#ff7a6b);outline-offset:-1px}.qd-cell.legend-pick .qd-cell-hit{cursor:crosshair}.qcmd-mask{color:#ffcf6b;white-space:nowrap;background:#ffb03c24;border:1px solid #6b5320;border-radius:3px;margin-right:10px;padding:1px 7px;font-size:10px;font-weight:700}.pb-win{flex-direction:column;height:100%;min-height:0;display:flex}.pb-win .pb-grid{flex:auto;min-height:0;overflow:auto}.pb-pagebar{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:6px;padding:4px 8px;display:flex}.pb-pagelabel{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);font-size:10px;font-weight:700}.pb-pagenum{color:#7fd0f2;cursor:pointer;background:#3cc8f51f;border:1px solid #2b5568;border-radius:4px;min-width:30px;padding:1px 8px;font-size:13px;font-weight:800}.pb-pagenum:hover{border-color:#7fb8dd}.pb-card.on-page{box-shadow:inset 2px 0 #7fd0f28c}.qd-cog-size{grid-column:1/-1;align-items:center;gap:4px;margin-top:3px;display:flex}.qd-cog-size span{color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;flex:1;font-size:9px;font-weight:700}.qd-cog-size button{color:#bcd;cursor:pointer;background:#1a2530;border:1px solid #2f4457;border-radius:3px;justify-content:center;align-items:center;width:20px;height:18px;padding:0;font-size:13px;font-weight:700;line-height:1;display:flex}.qd-cog-size button:disabled{opacity:.3;cursor:default}.qd-win-body .qd-ws-grid{grid-template-columns:repeat(auto-fill, minmax(calc(94px * var(--qd-btn,1)), 1fr))}.qd-win-body .qd-cell,.qd-win-body .qd-cell-hit{min-height:calc(46px * var(--qd-btn,1))}.qd-win-body .qd-cell-hit{font-size:calc(12px * var(--qd-txt,1))}.qd-ctx-backdrop{z-index:40;position:fixed;inset:0}.qd-ctxmenu{z-index:41;background:#0f1620;border:1px solid #35506a;border-radius:6px;flex-direction:column;gap:2px;min-width:150px;padding:4px;display:flex;position:fixed;box-shadow:0 8px 22px #0000008c}.qd-ctx-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);padding:3px 6px 4px;font-size:9px;font-weight:700}.qd-ctxmenu button{text-align:left;color:#cfe4fb;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:5px 8px;font-size:12px}.qd-ctxmenu button:hover{background:#1c2b39}.qd-ctxmenu button.on{color:#16131a;background:var(--coral);font-weight:700}.qd-win.focused{outline-color:#4aa3ff}.qd-win-grip{background:linear-gradient(135deg,#0000 45%,#4aa3ff 45% 60%,#0000 60%)}.qd-ctxmenu button.on{color:#fff;background:#3a86c0}.qd-cell.legend-pick{outline-color:#4aa3ff}.qd-cell.align-pick{outline-offset:-1px;outline:1px dashed #4aa3ff}.qd-cell.align-pick .qd-cell-hit{cursor:copy}.pb-card.convert-pick{outline-offset:-1px;outline:1px dashed #4aa3ff}.pb-card.convert-pick .pb-fire{cursor:cell}.qd-cell.order-pick{outline-offset:-1px;outline:1px dashed #4aa3ff}.qd-cell.order-pick .qd-cell-hit{cursor:pointer}.qd-ordernum{color:#fff!important;background:#3a86c0!important}.qd-showcard-master{border-color:var(--coral);box-shadow:inset 0 0 0 1px #ff7a6b59}.tour-launch-wrap{position:relative}.tour-menu-backdrop{z-index:50;position:fixed;inset:0}.tour-menu{z-index:51;background:var(--bg-elev,#12181f);border:1px solid var(--border);border-radius:9px;flex-direction:column;gap:3px;min-width:232px;padding:5px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #00000080}.tour-menu>button,.tour-menu>a{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;gap:1px;padding:8px 11px;text-decoration:none;display:flex}.tour-menu>button:hover,.tour-menu>a:hover{background:#ffffff0f}.tour-menu b{color:var(--text);font-size:13px;font-weight:600}.tour-menu small{color:var(--text-dim);font-size:11px}.qscreen-wheels{border-top:1px solid var(--border);background:var(--bg-elev,#0f151d);flex:none;align-items:stretch;gap:6px;padding:5px 8px;display:flex}.qwh-bank{letter-spacing:.08em;text-transform:uppercase;color:#7fd0f2;border-right:1px solid var(--border);align-items:center;padding:0 8px;font-size:10px;font-weight:800;display:flex}.qwh{background:#7fd0f20f;border:1px solid #24384a;border-radius:6px;flex:1 1 0;grid-template-rows:auto auto;grid-template-columns:1fr auto;align-items:center;gap:0 6px;min-width:0;padding:3px 8px;display:grid}.qwh.empty{background:0 0;border-color:#0000}.qwh-name{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;grid-area:1/1;font-size:10px;overflow:hidden}.qwh-val{color:#eaf3ff;font-variant-numeric:tabular-nums;grid-area:2/1;font-size:17px;font-weight:700}.qwh-arrows{flex-direction:column;grid-area:1/2/span 2;gap:2px;display:flex}.qwh-arrows button{cursor:pointer;color:#bcd;background:#1a2530;border:1px solid #2f4457;border-radius:3px;justify-content:center;align-items:center;width:22px;height:16px;padding:0;font-size:9px;line-height:1;display:flex}.qwh-arrows button:hover{border-color:#7fb8dd}.qwh-none{text-align:center;color:var(--text-faint);grid-column:1/span 2}
