:root{--ground: #eae5de;--panel: #f6f2ec;--panel-2: #ffffff;--sunken: #e3ded6;--edge: #ded7cd;--ink: #5c5751;--ink-strong: #3f3a35;--ink-dim: #9c958c;--red: #f0524a;--green: #79bd42;--blue: #37b6dd;--amber: #f0b429;--violet: #9b7fd4;--radius: 12px;--radius-sm: 8px;--shadow: 0 1px 0 rgba(90, 80, 65, .08), 0 2px 6px rgba(90, 80, 65, .07);font-family:Avenir Next,Nunito,system-ui,-apple-system,Segoe UI,sans-serif;font-size:12.5px;color:var(--ink);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{background:var(--ground)}#app{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-columns:var(--left-dock, 236px) minmax(0,1fr) var(--right-dock, 320px);grid-template-areas:"toolbar toolbar toolbar" "left viewport inspector" "validation validation validation" "statusbar statusbar statusbar";gap:8px;padding:8px;height:100vh;background:var(--ground);color:var(--ink)}#app.drop-target{outline:3px dashed var(--blue);outline-offset:-6px}.toolbar,.left-panel,.inspector,.validation,.statusbar{background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow)}.panel-title{color:var(--ink-strong);font-weight:800;letter-spacing:.1em;font-size:11px;text-transform:uppercase}.section-title{color:var(--ink-strong);font-weight:800;font-size:11px;letter-spacing:.06em;text-transform:uppercase;margin:14px 0 6px;padding-bottom:4px;border-bottom:2px solid var(--edge)}.panel-empty,.panel-note{color:var(--ink-dim);line-height:1.45;padding:3px 0;font-size:11.5px}.hidden{display:none!important}.toolbar{grid-area:toolbar;display:flex;flex-direction:column;gap:6px;padding:8px 10px}.tb-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tb-row.sub{border-top:2px solid var(--edge);padding-top:6px}.tb-spacer{flex:1}.tb-group{display:flex;align-items:center;gap:5px}.tb-group.segmented{gap:0;background:var(--sunken);border-radius:var(--radius-sm);padding:2px}.tb-group.segmented .tb-button{background:transparent;box-shadow:none;border-radius:6px}.tb-group.segmented .tb-button.active{background:var(--panel-2);color:var(--ink-strong);box-shadow:0 1px 3px #5a50412e}.tb-label{color:var(--ink-dim);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:700}.tb-button{background:var(--panel-2);color:var(--ink);border:none;border-radius:var(--radius-sm);padding:6px 11px;font:inherit;font-weight:700;cursor:pointer;box-shadow:0 1px 2px #5a504124;transition:transform .06s ease,background .1s ease,color .1s ease}.tb-button:hover:not(:disabled){transform:translateY(-1px);color:var(--ink-strong)}.tb-button:active:not(:disabled){transform:translateY(0)}.tb-button.active{background:var(--blue);color:#fff}.tb-button.primary{background:var(--green);color:#fff}.tb-button.danger{background:var(--red);color:#fff}.tb-button:disabled{opacity:.4;cursor:default;box-shadow:none}.tb-field{display:flex;align-items:center;gap:5px}.tb-number{width:62px;background:var(--panel-2);border:none;border-radius:6px;color:var(--ink-strong);padding:5px 6px;font:inherit;font-weight:700;box-shadow:0 1px 2px #5a504124}.tb-select{background:var(--panel-2);color:var(--ink);border:none;border-radius:var(--radius-sm);padding:6px 8px;font:inherit;font-weight:700;box-shadow:0 1px 2px #5a504124}.tb-identity{display:flex;align-items:baseline;gap:9px;min-width:0}.tb-name{font-weight:800;font-size:15px;color:var(--ink-strong);letter-spacing:-.01em}.tb-mapid{color:var(--ink-dim);font-weight:700}.tb-hash{color:var(--ink-dim);font-size:10.5px;font-family:ui-monospace,SF Mono,Menlo,monospace}.tb-dirty{color:var(--amber);font-weight:800}.tb-clean{color:var(--ink-dim);font-weight:700}.tb-validation{color:var(--green);font-weight:800;padding:4px 10px;border-radius:999px;background:#79bd4229}.tb-validation.bad{color:var(--red);background:#f0524a26}.hidden-file-input{display:none}.left-panel{grid-area:left;display:flex;flex-direction:column;min-height:0;overflow:hidden}.left-tabs{display:flex;gap:4px;padding:8px 8px 0}.left-tab{flex:1;background:var(--sunken);color:var(--ink-dim);border:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0;padding:7px 6px;font:inherit;font-weight:800;letter-spacing:.04em;cursor:pointer}.left-tab.active{background:var(--panel-2);color:var(--ink-strong)}.palette,.materials{flex:1;overflow-y:auto;padding:10px;background:var(--panel-2);margin:0 8px 8px;border-radius:0 0 var(--radius-sm) var(--radius-sm)}.lane-filters{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:6px 0 10px}.lane-chip{background:var(--sunken);color:var(--ink-dim);border:none;border-radius:999px;padding:3px 9px;font:inherit;font-size:10.5px;font-weight:700;cursor:pointer}.lane-chip.on{background:#37b6dd33;color:#1d7d9b}.palette-category{display:flex;align-items:center;padding:8px 2px 4px;margin-top:4px;font-weight:800;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-strong);border-top:2px solid var(--edge);cursor:pointer}.palette-category:first-of-type{border-top:none}.palette-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;padding:4px 0 8px}.palette-cell{display:flex;flex-direction:column;align-items:center;gap:4px;background:var(--panel);border:2px solid transparent;border-radius:10px;padding:6px 4px;cursor:pointer;color:var(--ink);font:inherit;transition:transform .06s ease,border-color .1s ease}.palette-cell:hover{transform:translateY(-1px);border-color:var(--edge)}.palette-cell.armed{border-color:var(--blue);background:#37b6dd1f}.palette-swatch{width:100%;aspect-ratio:1;border-radius:8px;object-fit:cover;background:#efebe2}.palette-label{font-size:10px;font-weight:700;color:var(--ink-dim);text-align:center;line-height:1.15}.palette-cell.armed .palette-label{color:#1d7d9b}.material-controls{background:var(--panel);border-radius:10px;padding:8px;margin:6px 0 10px}.material-controls .field-label{width:62px}.material-controls .field-input.number{max-width:none;flex:1}.material-controls .tb-button{width:100%;margin-top:6px}.material-active{display:flex;align-items:center;gap:8px;margin-bottom:6px}.material-active .palette-swatch{width:44px;height:44px;flex:none}.material-active-name{font-weight:800;color:var(--ink-strong);font-size:11.5px}.material-chip{display:inline-flex;width:26px;height:26px;border-radius:6px;overflow:hidden;background:var(--sunken);flex:none}.material-chip-img{width:100%;height:100%;object-fit:cover}.viewport{grid-area:viewport;position:relative;overflow:hidden;min-width:0;min-height:0;border-radius:var(--radius);box-shadow:var(--shadow)}.viewport-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:crosshair;border-radius:var(--radius)}.viewport-canvas.panning{cursor:grabbing}.viewport-canvas.explore{cursor:grab}.inspector{grid-area:inspector;overflow-y:auto;padding:10px 12px 16px}.field-row{display:flex;align-items:center;gap:6px;margin:5px 0}.field-label{width:84px;flex-shrink:0;color:var(--ink-dim);font-weight:700;font-size:11px}.field-input{flex:1;min-width:0;background:var(--panel-2);border:2px solid var(--edge);border-radius:var(--radius-sm);color:var(--ink-strong);padding:5px 7px;font:inherit;font-weight:600}.field-input:focus{outline:none;border-color:var(--blue)}.field-input.number{max-width:78px}.field-static{color:var(--ink);font-weight:600}.field-checkbox{accent-color:var(--green);width:16px;height:16px}.field-color{width:46px;height:26px;padding:0;border:2px solid var(--edge);border-radius:6px;background:none;cursor:pointer}.field-button{background:var(--sunken);color:var(--ink);border:none;border-radius:6px;padding:4px 9px;font:inherit;font-weight:700;cursor:pointer}.field-button:hover{background:var(--edge)}.validation{grid-area:validation;overflow:hidden}.validation-header{display:flex;align-items:center;gap:10px;padding:7px 12px;cursor:pointer}.validation-caret{color:var(--ink-dim);font-weight:800}.validation-summary{color:var(--ink-dim);font-weight:700}.validation-summary.has-issues{color:var(--red)}.validation-body{padding:0 12px 10px;max-height:132px;overflow-y:auto}.validation-ok{color:#4d8c22;font-weight:700;padding:4px 0}.validation-row{display:flex;gap:10px;padding:4px 6px;align-items:baseline;border-radius:6px}.validation-row+.validation-row{border-top:1px solid var(--edge)}.validation-glyph{color:var(--red);font-weight:800}.validation-row.warn .validation-glyph{color:var(--amber)}.validation-row.navigable{cursor:pointer}.validation-row.navigable:hover{background:var(--sunken)}.validation-code{color:var(--red);font-weight:800;min-width:168px;flex-shrink:0;font-size:11.5px}.validation-row.warn .validation-code{color:#a9741a}.validation-path{color:var(--ink-dim);min-width:200px;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px}.validation-message{color:var(--ink);flex:1}.validation-detail{color:#a9741a;font-weight:700;flex-shrink:0}.validation-go{color:var(--blue);font-weight:800;flex-shrink:0}.budget-strip{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap}.budget-meter{position:relative;display:flex;align-items:baseline;gap:5px;background:var(--sunken);border-radius:999px;padding:3px 10px;overflow:hidden;font-size:10.5px;font-weight:700}.budget-label{color:var(--ink-dim);position:relative;z-index:1}.budget-value{color:var(--ink-strong);position:relative;z-index:1}.budget-fill{position:absolute;left:0;top:0;bottom:0;background:#79bd4247;z-index:0}.budget-meter.near .budget-fill{background:#f0b42957}.budget-meter.over .budget-fill{background:#f0524a57}.statusbar{grid-area:statusbar;display:flex;align-items:center;gap:16px;padding:6px 12px;color:var(--ink-dim);min-height:30px;font-weight:600}.status-coords{min-width:150px;color:var(--ink-strong);font-weight:800;font-family:ui-monospace,SF Mono,Menlo,monospace}.status-selection{color:var(--ink);font-weight:700}.status-hover{color:#1d7d9b;font-weight:700;min-width:140px}.status-toast{margin-left:auto;color:#fff;background:var(--red);padding:3px 12px;border-radius:999px;font-weight:700}.library-host,.wizard-host{display:none}.library-host.open,.wizard-host.open{display:block}.library-scrim,.modal-scrim{position:fixed;inset:0;background:#3c342c52;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);z-index:10}.library-drawer{position:fixed;top:0;left:0;bottom:0;width:360px;background:var(--panel);z-index:11;display:flex;flex-direction:column;overflow:hidden;padding:14px;box-shadow:4px 0 24px #3c342c33}.library-list{flex:1;min-height:0;overflow-y:auto;margin:0 -14px -14px;padding:2px 14px 14px}.library-head{display:flex;align-items:center;gap:8px;margin-bottom:12px}.library-head .panel-title{margin-right:auto}.library-drawer{width:420px}.library-controls{display:flex;gap:6px;margin-bottom:10px}.library-controls .field-input{flex:1}.library-row{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-areas:"thumb info" "thumb actions";gap:4px 10px;background:var(--panel-2);border:2px solid transparent;border-radius:10px;padding:10px;margin-bottom:8px;box-shadow:0 1px 2px #5a50411a}.library-row.stale{border-color:var(--amber)}.library-thumb{grid-area:thumb;width:96px;height:62px;border-radius:7px;overflow:hidden;background:var(--sunken);display:flex;align-items:center;justify-content:center}.library-thumb img{width:100%;height:100%;object-fit:cover;display:block}.library-badges{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:2px}.library-badge{font-size:9px;font-weight:800;letter-spacing:.07em;border-radius:999px;padding:2px 7px}.library-badge.builtin{background:#37b6dd33;color:#1d7d9b}.library-badge.user{background:#79bd4233;color:#4d8c22}.library-badge.stale{background:#f0b42942;color:#96690f}.library-badge.draft{background:#7a6e602e;color:#6b6156}.library-action.primary{background:var(--amber);color:#fff}.library-row.open-doc{border-color:var(--blue)}.library-info{grid-area:info;cursor:pointer;display:flex;flex-direction:column;gap:2px;min-width:0}.library-name{font-weight:800;color:var(--ink-strong);font-size:13px}.library-meta{color:var(--ink-dim);font-size:10.5px;font-weight:600}.library-actions{grid-area:actions;display:flex;gap:5px;flex-wrap:wrap;align-items:flex-end}.library-action{background:var(--sunken);color:var(--ink);border:none;border-radius:6px;padding:3px 10px;font:inherit;font-size:10.5px;font-weight:700;cursor:pointer}.library-action:hover{background:var(--edge)}.wizard-card{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 48px));max-height:calc(100vh - 64px);overflow-y:auto;background:var(--panel);border-radius:16px;padding:20px 22px;z-index:11;box-shadow:0 18px 48px #3c342c47}.wizard-title{font-size:26px;font-weight:800;color:var(--ink-strong);letter-spacing:-.02em;margin-bottom:4px}.wizard-step{font-weight:800;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim);margin:16px 0 8px;padding-bottom:4px;border-bottom:2px solid var(--edge)}.wizard-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:6px}.wizard-choice{display:flex;flex-direction:column;align-items:flex-start;gap:6px;background:var(--panel-2);border:2px solid transparent;border-radius:12px;padding:10px;cursor:pointer;font:inherit;text-align:left;color:var(--ink)}.wizard-choice.active{border-color:var(--blue);background:#37b6dd1a}.wizard-choice-title{font-weight:800;color:var(--ink-strong)}.wizard-choice-blurb{color:var(--ink-dim);font-size:10.5px;line-height:1.35}.wizard-glyph{position:relative;display:block;width:100%;height:42px;border-radius:8px;overflow:hidden;background:#cfe4f7}.wizard-glyph.flat{background:#e4f2b4}.wizard-glyph.water{background:#8fceda}.wizard-glyph.void{background:#dfe7ef}.wizard-glyph.void .wizard-glyph-plate{inset:30% 26% 24%;border-radius:8px}.wizard-glyph-plate{position:absolute;inset:34% 18% 18%;border-radius:6px;background:#f0e5b8;box-shadow:0 2px #b9ac86}.wizard-glyph.flat .wizard-glyph-plate{inset:26% 6% 0;border-radius:4px 4px 0 0}.wizard-glyph-under{position:absolute;inset:0;background:linear-gradient(to bottom,#fff6,#fff0)}.wizard-themes{display:flex;gap:6px;flex-wrap:wrap}.wizard-theme{background:var(--panel-2);border:2px solid transparent;border-radius:999px;padding:6px 14px;font:inherit;font-weight:700;color:var(--ink);cursor:pointer}.wizard-theme.active{border-color:var(--green);color:#4d8c22}.wizard-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--edge);border-radius:999px;border:2px solid var(--panel)}::-webkit-scrollbar-thumb:hover{background:#cdc4b7}.left-panel,.inspector{position:relative}#app.left-collapsed .left-panel,#app.right-collapsed .inspector{display:none}.dock-splitter{position:absolute;top:0;bottom:0;width:10px;cursor:col-resize;z-index:5;touch-action:none}.dock-splitter.left{right:-5px}.dock-splitter.right{left:-5px}.dock-splitter:hover:after{content:"";position:absolute;top:8px;bottom:8px;left:4px;width:2px;border-radius:2px;background:var(--blue)}.dock-collapse{position:absolute;top:6px;right:6px;width:20px;height:20px;padding:0;border:0;border-radius:6px;background:var(--sunken);color:var(--ink-dim);font-size:12px;line-height:1;cursor:pointer;z-index:6}.dock-collapse.right{right:auto;left:6px}.dock-collapse:hover{color:var(--ink-strong)}.dock-tab{position:absolute;top:50%;transform:translateY(-50%);width:18px;height:54px;padding:0;border:0;background:var(--panel);color:var(--ink-dim);box-shadow:var(--shadow);cursor:pointer;z-index:6;display:none;font-size:13px}.dock-tab.left{left:0;border-radius:0 8px 8px 0}.dock-tab.right{right:0;border-radius:8px 0 0 8px}#app.left-collapsed .dock-tab.left,#app.right-collapsed .dock-tab.right{display:block}.dock-tab:hover{color:var(--ink-strong)}.pal-head{padding:0 0 6px;position:sticky;top:0;background:var(--panel);z-index:2}.pal-head-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.pal-icon-button{border:0;background:var(--sunken);color:var(--ink);border-radius:6px;width:22px;height:20px;font-size:11px;cursor:pointer;margin-right:22px}.pal-search{margin-top:6px}.pal-search-input{width:100%;border:0;border-radius:8px;background:var(--sunken);color:var(--ink-strong);padding:6px 8px;font:inherit;outline:none}.pal-search-input:focus{box-shadow:inset 0 0 0 2px var(--blue)}.pal-search-input::placeholder{color:var(--ink-dim)}.pal-empty{padding:8px 2px}.palette-category.static{cursor:default}.palette-cell.active{box-shadow:inset 0 0 0 2px var(--blue)}.palette-grid.list{display:flex;flex-direction:column;gap:2px}.palette-grid.list .palette-cell{flex-direction:row;align-items:center;gap:8px;padding:3px 6px;height:auto;text-align:left}.palette-grid.list .palette-swatch{width:22px;height:22px;flex:0 0 auto}.palette-grid.list .palette-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.validation.collapsed{padding-bottom:0}.validation-verdict{font-weight:800}.validation-verdict.good{color:var(--green)}.validation-verdict.bad{color:var(--red)}.validation-count{background:var(--sunken);border-radius:999px;padding:0 6px;font-size:10px;font-weight:700;color:var(--ink)}.validation-row.group{cursor:pointer;font-weight:600}.validation-row.instance{padding-left:26px;opacity:.85}.validation-mute,.validation-unmute{border:0;background:var(--sunken);color:var(--ink-dim);border-radius:6px;padding:1px 7px;font-size:10px;cursor:pointer}.validation-unmute{margin:6px 0 0 4px}.validation-mute:hover,.validation-unmute:hover{color:var(--ink-strong)}.viewport{position:relative}.vp-hud{position:absolute;z-index:4;display:flex;gap:4px;align-items:center}.vp-hud.hidden{display:none}.vp-hud-legend{left:10px;top:10px;flex-wrap:wrap;max-width:60%}.vp-hud-zoom{right:10px;bottom:10px}.vp-hud-button{border:0;border-radius:8px;background:#ffffffdb;box-shadow:var(--shadow);color:var(--ink);min-width:24px;height:24px;padding:0 6px;font:inherit;font-weight:700;cursor:pointer}.vp-hud-button.wide{padding:0 10px}.vp-hud-button.on{background:var(--blue);color:#fff}.vp-zoom-readout{color:var(--ink-dim);background:#ffffffb3;border-radius:6px;padding:2px 6px}.vp-legend-item{display:flex;align-items:center;gap:4px;background:#fffc;border-radius:8px;padding:2px 8px 2px 3px}.vp-legend-label{color:var(--ink-dim);font-size:10px}.vp-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;pointer-events:none}.vp-empty:empty{display:none}.vp-empty-title{font-size:15px;font-weight:800;color:var(--ink-strong)}.vp-empty-actions{display:flex;gap:8px;pointer-events:auto}.vp-labels{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden}.vp-badge,.vp-chip{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;border-radius:999px;font-size:10px;font-weight:800;padding:1px 6px;box-shadow:var(--shadow)}.vp-badge{width:16px;height:16px;padding:0;display:flex;align-items:center;justify-content:center;color:#fff}.vp-badge.seat{background:var(--blue)}.vp-badge.power{background:var(--amber)}.vp-badge.sudden{background:var(--red)}.vp-chip{background:#ffffffe6;color:var(--ink-strong);font-weight:600}.vp-chip.primary{background:var(--blue);color:#fff}.shortcut-host,.welcome-host{position:fixed;inset:0;z-index:40;display:none}.shortcut-host.open,.welcome-host.open{display:block}.shortcut-card,.welcome-card{position:absolute;z-index:11;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--panel);border-radius:var(--radius);box-shadow:0 12px 40px #3c322847;padding:18px 20px;max-width:min(900px,92vw);max-height:88vh;overflow:auto}.shortcut-head{margin-bottom:12px}.shortcut-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px 22px}.shortcut-group{display:flex;flex-direction:column;gap:3px}.shortcut-row{display:flex;gap:8px;align-items:baseline}.shortcut-keys{flex:0 0 82px;text-align:right;font-family:inherit;font-weight:800;color:var(--ink-strong);background:var(--sunken);border-radius:5px;padding:1px 5px;font-size:10.5px}.shortcut-what{color:var(--ink)}.welcome-card{width:min(720px,92vw);text-align:center}.welcome-doors{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 6px}.welcome-door{display:flex;flex-direction:column;align-items:center;gap:6px;border:0;background:var(--panel-2);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 12px;cursor:pointer;text-align:center}.welcome-door:hover{box-shadow:0 0 0 2px var(--blue),var(--shadow)}.welcome-glyph{font-size:22px}.welcome-door-title{font-weight:800;color:var(--ink-strong)}.welcome-door-blurb{color:var(--ink-dim);font-size:11px;line-height:1.4}.validation-row.info .validation-glyph{color:var(--blue)}.validation-row.info{opacity:.9}.tb-button.play{color:var(--green);font-weight:800}.tb-button.play.active{background:var(--green);color:#fff}.play-host{position:absolute;inset:0;z-index:8;display:none}.play-host.active{display:block}.play-stage{position:absolute;inset:0;overflow:hidden;border-radius:var(--radius);background:#000}.play-stage canvas{width:100%;height:100%;display:block}.play-banner{position:absolute;left:10px;right:10px;bottom:10px;display:flex;align-items:center;gap:10px;background:#ffffffe6;border-radius:10px;box-shadow:var(--shadow);padding:6px 10px;z-index:2}.play-pill{background:var(--green);color:#fff;font-weight:800;border-radius:999px;padding:2px 10px;font-size:10px;letter-spacing:.08em}.play-status{color:var(--ink-strong);font-weight:700}.play-keys{color:var(--ink-dim);margin-left:auto}.play-leave{border:0;border-radius:8px;background:var(--sunken);color:var(--ink);padding:4px 10px;font:inherit;font-weight:700;cursor:pointer}.play-leave:hover{background:var(--red);color:#fff}.arrange-row{display:flex;gap:4px;flex:1;flex-wrap:wrap}.arrange-button{flex:1 1 0;min-width:26px;background:var(--panel-2);color:var(--ink);border:none;border-radius:var(--radius-sm);padding:5px 4px;font:inherit;font-weight:700;font-size:13px;line-height:1.1;cursor:pointer}.arrange-button.wide{flex:1 1 40%;font-size:12px}.arrange-button:hover:not(:disabled){background:var(--panel-3, var(--panel-2));color:var(--ink-strong)}.arrange-button.active,.arrange-button.primary{background:var(--accent, #2f9e8f);color:#fff}.arrange-button:disabled{opacity:.35;cursor:default}.arrange-actions{position:sticky;bottom:-16px;z-index:2;margin-top:6px;padding:8px 0;background:var(--panel);box-shadow:0 -6px 10px -6px #00000040}.is-playing .left-panel,.is-playing .inspector,.is-playing .validation{pointer-events:none;opacity:.45;filter:saturate(.6)}
