.rm-panel.svelte-zx5rfc{position:sticky;top:.75rem;align-self:stretch;display:flex;flex-direction:column;gap:.75rem;height:0;min-height:100%;max-height:100%;overflow-y:auto;overscroll-behavior:contain;padding:.85rem;background:var(--qrd-bg, #faf7f2);border:1px solid rgba(0,0,0,.08);border-radius:.5rem;min-width:0;font-size:.85rem;scrollbar-gutter:stable}.dark .rm-panel.svelte-zx5rfc{background:#1f1f1f;border-color:#ffffff14;color:#e5e5e5}.rm-panel h3,.rm-panel h4,.rm-panel p{padding:0!important;margin:0!important;text-shadow:none!important;text-decoration:none!important}.rm-panel button{margin:0!important;min-height:0!important;line-height:1.2}.rm-panel input[type=number]{display:inline-block!important;width:auto!important;margin:0!important;padding:.16rem .28rem!important;background-image:none!important;resize:none!important;font-size:inherit!important;font-weight:inherit!important}.rm-panel .rs-row{gap:.45rem;grid-template-columns:minmax(82px,.7fr) minmax(76px,1fr) minmax(70px,auto)}.rm-panel .rs-label{font-size:.68rem;letter-spacing:.035em}.rm-panel .rs-entry input{width:4.4rem!important}.panel-header.svelte-zx5rfc{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.panel-header.svelte-zx5rfc h3:where(.svelte-zx5rfc){margin:0;font-size:1rem;font-weight:600}.unit-toggle.svelte-zx5rfc{font-size:.7rem;padding:.25rem .55rem;border-radius:999px;border:1px solid rgba(0,0,0,.15);background:#fff;cursor:pointer;color:#444;text-transform:uppercase;letter-spacing:.04em}.dark .unit-toggle.svelte-zx5rfc{background:#2a2a2a;color:#ddd;border-color:#ffffff2e}.unit-toggle[aria-pressed=true].svelte-zx5rfc{background:#16a34a;color:#fff;border-color:#16a34a}.group.svelte-zx5rfc{display:flex;flex-direction:column;gap:.38rem;padding:.55rem 0 0;border-top:1px solid rgba(0,0,0,.07)}.dark .group.svelte-zx5rfc{border-top-color:#ffffff14}.group-title.svelte-zx5rfc{display:flex;align-items:center;justify-content:space-between}.group.svelte-zx5rfc h4:where(.svelte-zx5rfc){margin:0;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#6b7280}.dark .group.svelte-zx5rfc h4:where(.svelte-zx5rfc){color:#9ca3af}.add-btn.svelte-zx5rfc{font-size:.7rem;padding:.2rem .5rem;border-radius:4px;border:1px solid rgba(34,197,94,.5);background:#22c55e14;color:#15803d;cursor:pointer}.add-btn.svelte-zx5rfc:disabled{opacity:.45;cursor:not-allowed}.dark .add-btn.svelte-zx5rfc{color:#86efac;background:#22c55e1f}.placement-group.svelte-zx5rfc{gap:.45rem}.placement-actions.svelte-zx5rfc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem}.placement-action-label.svelte-zx5rfc{grid-column:1 / -1;margin-top:.2rem;color:#6b7280;font-size:.64rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.placement-action-label.svelte-zx5rfc:first-child{margin-top:0}.placement-actions.svelte-zx5rfc button:where(.svelte-zx5rfc){border:1px solid rgba(0,0,0,.12);border-radius:5px;background:#fff;color:#374151;padding:.34rem .35rem;font-size:.7rem;cursor:pointer}.placement-actions.svelte-zx5rfc button:where(.svelte-zx5rfc):hover{background:#16a34a;border-color:#16a34a;color:#fff}.placement-readout.svelte-zx5rfc{display:grid;gap:.35rem}.placement-readout.svelte-zx5rfc>div:where(.svelte-zx5rfc){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.08rem .5rem;padding:.42rem;border-radius:.35rem;background:#1118270a}.placement-readout.svelte-zx5rfc>div.wide:where(.svelte-zx5rfc){grid-template-columns:minmax(0,1fr) auto}.placement-readout.svelte-zx5rfc span:where(.svelte-zx5rfc){color:#374151;font-size:.72rem;font-weight:600}.placement-readout.svelte-zx5rfc strong:where(.svelte-zx5rfc){color:#15803d;font-family:ui-monospace,monospace;font-size:.75rem}.placement-readout.svelte-zx5rfc em:where(.svelte-zx5rfc){grid-column:1 / -1;color:#6b7280;font-size:.66rem;font-style:normal;line-height:1.25}.sbir-variant-list.svelte-zx5rfc{grid-column:1 / -1;display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:.16rem .45rem;align-items:baseline;padding:.28rem 0}.sbir-variant-list.svelte-zx5rfc span:where(.svelte-zx5rfc){color:#374151;font-size:.67rem;font-weight:700}.sbir-variant-list.svelte-zx5rfc b:where(.svelte-zx5rfc){color:#15803d;font-family:ui-monospace,monospace;font-size:.68rem;font-weight:700;white-space:nowrap}.sbir-variant-list.svelte-zx5rfc small:where(.svelte-zx5rfc){color:#6b7280;font-size:.64rem;white-space:nowrap}.placement-note.svelte-zx5rfc{padding:.45rem!important;border-left:3px solid #16a34a;border-radius:.35rem;background:#16a34a14;color:#14532d;font-size:.68rem;line-height:1.35}.dark .placement-actions.svelte-zx5rfc button:where(.svelte-zx5rfc){background:#ffffff0f;border-color:#ffffff1f;color:#d1d5db}.dark .placement-action-label.svelte-zx5rfc{color:#9ca3af}.dark .placement-readout.svelte-zx5rfc>div:where(.svelte-zx5rfc){background:#ffffff0d}.dark .placement-readout.svelte-zx5rfc span:where(.svelte-zx5rfc){color:#d1d5db}.dark .placement-readout.svelte-zx5rfc strong:where(.svelte-zx5rfc){color:#86efac}.dark .placement-readout.svelte-zx5rfc em:where(.svelte-zx5rfc){color:#9ca3af}.dark .sbir-variant-list.svelte-zx5rfc span:where(.svelte-zx5rfc){color:#d1d5db}.dark .sbir-variant-list.svelte-zx5rfc b:where(.svelte-zx5rfc){color:#86efac}.dark .sbir-variant-list.svelte-zx5rfc small:where(.svelte-zx5rfc){color:#9ca3af}.dark .placement-note.svelte-zx5rfc{background:#22c55e1f;color:#bbf7d0}.source-card.svelte-zx5rfc{display:flex;flex-direction:column;gap:.34rem;padding:.46rem;border:1px dashed rgba(0,0,0,.1);border-radius:.4rem}.dark .source-card.svelte-zx5rfc{border-color:#ffffff1f}.source-header.svelte-zx5rfc{display:flex;align-items:center;justify-content:space-between;gap:.35rem}.source-name.svelte-zx5rfc{font-size:.75rem;font-weight:600;color:#b91c1c}.dark .source-name.svelte-zx5rfc{color:#fca5a5}.source-title-actions.svelte-zx5rfc{display:flex;gap:.25rem}.aim-btn.svelte-zx5rfc{margin-left:auto;border:1px solid rgba(22,163,74,.35);border-radius:4px;background:#16a34a14;color:#15803d;font-size:.66rem;font-weight:700;line-height:1;padding:.22rem .36rem;cursor:pointer}.aim-btn.svelte-zx5rfc:hover{background:#16a34a;border-color:#16a34a;color:#fff}.dark .aim-btn.svelte-zx5rfc{background:#22c55e1f;border-color:#86efac47;color:#86efac}.remove-btn.svelte-zx5rfc{background:transparent;border:none;color:#6b7280;font-size:1.1rem;line-height:1;cursor:pointer;padding:0 .25rem}.remove-btn.svelte-zx5rfc:hover{color:#b91c1c}.subgroup.svelte-zx5rfc{display:grid;gap:.3rem}.sub-label.svelte-zx5rfc{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.035em;color:#6b7280}.segmented.svelte-zx5rfc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;padding:2px;border-radius:6px;background:#11182714}.viz-segmented.svelte-zx5rfc{grid-template-columns:repeat(2,minmax(0,1fr))}.viz-layer-list.svelte-zx5rfc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;padding:2px;border-radius:6px;background:#11182714}.viz-layer-row.svelte-zx5rfc{display:grid;grid-template-columns:1rem minmax(0,1fr);align-items:center;gap:.18rem;padding:0 .18rem;border-radius:4px}.viz-layer-row.active.svelte-zx5rfc{background:#16a34a}.viz-layer-row.svelte-zx5rfc input:where(.svelte-zx5rfc){margin:0;accent-color:#16a34a}.viz-layer-row.active.svelte-zx5rfc input:where(.svelte-zx5rfc){accent-color:white}.viz-layer-row.svelte-zx5rfc button:where(.svelte-zx5rfc){border:0;border-radius:4px;background:transparent;color:#4b5563;padding:.28rem .12rem;text-align:left;font-size:.68rem;cursor:pointer}.viz-layer-row.active.svelte-zx5rfc button:where(.svelte-zx5rfc){color:#fff}.segmented.svelte-zx5rfc button:where(.svelte-zx5rfc){border:0;border-radius:4px;background:transparent;color:#4b5563;padding:.28rem .22rem;font-size:.68rem;cursor:pointer}.segmented.svelte-zx5rfc button.active:where(.svelte-zx5rfc){background:#16a34a;color:#fff}.segmented.svelte-zx5rfc button:where(.svelte-zx5rfc) span:where(.svelte-zx5rfc){margin-left:.18rem;font-family:ui-monospace,monospace;opacity:.75}.mode-panel.svelte-zx5rfc,.camera-panel.svelte-zx5rfc{display:grid;gap:.4rem;padding:.5rem;border:1px solid rgba(0,0,0,.08);border-radius:.4rem;background:#ffffff80}.dark .mode-panel.svelte-zx5rfc,.dark .camera-panel.svelte-zx5rfc{background:#ffffff0a;border-color:#ffffff14}.camera-presets.svelte-zx5rfc{grid-template-columns:repeat(3,minmax(0,1fr))}.mode-picker.svelte-zx5rfc{display:grid;gap:.35rem}.mode-picker-toggle.svelte-zx5rfc{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:1px solid rgba(0,0,0,.12);border-radius:5px;background:#fff;color:#374151;padding:.35rem .45rem;font-size:.72rem;cursor:pointer}.mode-picker-toggle.open.svelte-zx5rfc,.mode-picker-toggle.svelte-zx5rfc:hover{border-color:#16a34a}.mode-picker-toggle.svelte-zx5rfc em:where(.svelte-zx5rfc){color:#6b7280;font-size:.64rem;font-style:normal}.mode-picker-panel.svelte-zx5rfc{display:grid;gap:.35rem}.mode-picker-panel.svelte-zx5rfc input:where(.svelte-zx5rfc){width:100%;border:1px solid rgba(0,0,0,.12);border-radius:5px;background:#fff;color:#111827;padding:.38rem .45rem;font-size:.74rem}.mode-result-list.svelte-zx5rfc{display:grid;gap:.25rem;max-height:12rem;overflow:auto;padding-right:.15rem}.mode-result.svelte-zx5rfc{display:grid!important;grid-template-columns:minmax(4.8rem,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:.18rem .45rem;min-height:2.75rem!important;border:1px solid rgba(0,0,0,.08);border-radius:5px;background:#ffffffd1;color:#374151;padding:.46rem .5rem!important;line-height:1.2!important;text-align:left!important;cursor:pointer}.mode-result.svelte-zx5rfc:hover,.mode-result.selected.svelte-zx5rfc{border-color:#16a34a;background:#16a34a1a}.mode-result.svelte-zx5rfc strong:where(.svelte-zx5rfc){color:#111827;font-family:ui-monospace,monospace;font-size:.72rem;line-height:1.2}.mode-result.svelte-zx5rfc span:where(.svelte-zx5rfc),.mode-result.svelte-zx5rfc em:where(.svelte-zx5rfc),.mode-empty.svelte-zx5rfc{color:#6b7280;font-size:.66rem;font-style:normal;line-height:1.2}.mode-result.svelte-zx5rfc em:where(.svelte-zx5rfc){grid-column:1 / -1;justify-self:start;text-transform:uppercase;letter-spacing:.04em}.mode-empty.svelte-zx5rfc{padding:.4rem}.dark .mode-picker-toggle.svelte-zx5rfc,.dark .mode-picker-panel.svelte-zx5rfc input:where(.svelte-zx5rfc),.dark .mode-result.svelte-zx5rfc{background:#ffffff0f;border-color:#ffffff1f;color:#d1d5db}.dark .mode-result.svelte-zx5rfc strong:where(.svelte-zx5rfc),.dark .mode-picker-panel.svelte-zx5rfc input:where(.svelte-zx5rfc){color:#f8fafc}.mode-readout.svelte-zx5rfc,.view-readout.svelte-zx5rfc{display:grid;gap:.08rem;color:#4b5563;font-size:.72rem}.mode-readout.svelte-zx5rfc strong:where(.svelte-zx5rfc),.view-readout.svelte-zx5rfc strong:where(.svelte-zx5rfc){color:#15803d;font-family:ui-monospace,monospace;font-size:.82rem}.view-readout.svelte-zx5rfc{padding:.4rem;border-radius:.35rem;background:#1118270d}.view-readout.svelte-zx5rfc strong:where(.svelte-zx5rfc){color:#111827;font-family:inherit}.button-row.svelte-zx5rfc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem}.button-row.svelte-zx5rfc button:where(.svelte-zx5rfc){border:1px solid rgba(0,0,0,.12);border-radius:5px;background:#fff;color:#374151;padding:.28rem .35rem;font-size:.7rem;cursor:pointer}.button-row.svelte-zx5rfc button.active:where(.svelte-zx5rfc),.button-row.svelte-zx5rfc button:where(.svelte-zx5rfc):hover:not(:disabled){background:#16a34a;color:#fff;border-color:#16a34a}.button-row.svelte-zx5rfc button:where(.svelte-zx5rfc):disabled{opacity:.45;cursor:not-allowed}.trouble-panel.svelte-zx5rfc{display:grid;gap:.35rem;padding:.45rem;border-radius:.35rem;background:#f59e0b14}.trouble-list.svelte-zx5rfc,.cluster-list.svelte-zx5rfc,.extrema-list.svelte-zx5rfc{display:grid;gap:.25rem}.trouble-chip.svelte-zx5rfc,.extrema-chip.svelte-zx5rfc,.cluster-chip.svelte-zx5rfc{display:grid!important;grid-template-columns:minmax(4.8rem,1fr) auto auto;align-items:center;gap:.35rem;border:1px solid rgba(245,158,11,.28);border-radius:5px;background:#ffffffc7;color:#374151;padding:.32rem .4rem!important;text-align:left;cursor:pointer}.cluster-chip.svelte-zx5rfc{border-color:#2563eb47;background:#2563eb14}.extrema-chip.svelte-zx5rfc{border-color:#dc26263d;background:#dc262614}.extrema-chip.dip.svelte-zx5rfc{border-color:#2563eb42;background:#2563eb14}.trouble-chip.svelte-zx5rfc:hover,.extrema-chip.svelte-zx5rfc:hover,.cluster-chip.svelte-zx5rfc:hover{border-color:#16a34a;background:#16a34a1a}.trouble-chip.svelte-zx5rfc strong:where(.svelte-zx5rfc),.extrema-chip.svelte-zx5rfc strong:where(.svelte-zx5rfc),.cluster-chip.svelte-zx5rfc strong:where(.svelte-zx5rfc){color:#111827;font-family:ui-monospace,monospace;font-size:.68rem}.cluster-chip.svelte-zx5rfc strong:where(.svelte-zx5rfc){font-family:inherit}.trouble-chip.svelte-zx5rfc span:where(.svelte-zx5rfc),.trouble-chip.svelte-zx5rfc em:where(.svelte-zx5rfc),.extrema-chip.svelte-zx5rfc span:where(.svelte-zx5rfc),.extrema-chip.svelte-zx5rfc em:where(.svelte-zx5rfc),.cluster-chip.svelte-zx5rfc span:where(.svelte-zx5rfc),.cluster-chip.svelte-zx5rfc em:where(.svelte-zx5rfc){color:#6b7280;font-size:.64rem;font-style:normal}.trouble-chip.svelte-zx5rfc em:where(.svelte-zx5rfc),.extrema-chip.svelte-zx5rfc em:where(.svelte-zx5rfc),.cluster-chip.svelte-zx5rfc em:where(.svelte-zx5rfc){color:#b45309;font-family:ui-monospace,monospace;font-weight:600}.extrema-chip.dip.svelte-zx5rfc em:where(.svelte-zx5rfc){color:#1d4ed8}.dark .trouble-panel.svelte-zx5rfc{background:#f59e0b1a}.dark .trouble-chip.svelte-zx5rfc,.dark .extrema-chip.svelte-zx5rfc,.dark .cluster-chip.svelte-zx5rfc{background:#ffffff0d;border-color:#ffffff1a;color:#d1d5db}.dark .trouble-chip.svelte-zx5rfc strong:where(.svelte-zx5rfc),.dark .extrema-chip.svelte-zx5rfc strong:where(.svelte-zx5rfc),.dark .cluster-chip.svelte-zx5rfc strong:where(.svelte-zx5rfc){color:#f8fafc}.view-legend.svelte-zx5rfc{display:flex;flex-wrap:wrap;gap:.35rem .55rem;color:#6b7280;font-size:.66rem}.view-legend.svelte-zx5rfc span:where(.svelte-zx5rfc){display:inline-flex;align-items:center;gap:.22rem}.swatch.svelte-zx5rfc{width:.62rem;height:.62rem;border-radius:2px;background:#94a3b8}.swatch.neg.svelte-zx5rfc{background:#2563eb}.swatch.node.svelte-zx5rfc{background:#e5e7eb;border:1px solid rgba(0,0,0,.16)}.swatch.pos.svelte-zx5rfc{background:#dc2626}.swatch.direct.svelte-zx5rfc{background:#16a34a}.swatch.reflect.svelte-zx5rfc{background:#f59e0b}.swatch.loop.svelte-zx5rfc{background:#06b6d4}.swatch.velocity.svelte-zx5rfc{background:#0ea5e9}.probe-panel.svelte-zx5rfc{display:grid;gap:.35rem;padding:.45rem;border-radius:.35rem;background:#1118270d}.probe-row.svelte-zx5rfc{display:grid;grid-template-columns:1fr auto;gap:.1rem .45rem;align-items:baseline;font-size:.7rem;color:#4b5563}.probe-row.svelte-zx5rfc strong:where(.svelte-zx5rfc){color:#111827;font-size:.72rem}.probe-row.svelte-zx5rfc span:where(.svelte-zx5rfc){text-transform:uppercase;letter-spacing:.04em;color:#15803d;font-size:.62rem}.probe-row.svelte-zx5rfc em:where(.svelte-zx5rfc){grid-column:1 / -1;font-style:normal;font-family:ui-monospace,monospace;color:#6b7280}.check-row.svelte-zx5rfc{display:inline-flex;align-items:center;gap:.4rem;color:#374151;font-size:.76rem}.check-grid.svelte-zx5rfc{display:grid;gap:.35rem;padding:.4rem;border-radius:.35rem;background:#1118270a}.check-row.svelte-zx5rfc input:where(.svelte-zx5rfc){margin:0;accent-color:#16a34a}.dark .sub-label.svelte-zx5rfc,.dark .check-row.svelte-zx5rfc{color:#cbd5e1}.dark .segmented.svelte-zx5rfc{background:#ffffff12}.dark .segmented.svelte-zx5rfc button:where(.svelte-zx5rfc){color:#d1d5db}.canvas-wrap.svelte-1r82yxl{position:relative;flex:1;min-height:60vh}.hint.svelte-1r82yxl{position:absolute;top:.75rem;left:50%;transform:translate(-50%);z-index:2;padding:.4rem .85rem;background:#000000a6;color:#fff;font-size:.78rem;border-radius:999px;pointer-events:none}.mode-explorer.svelte-1r82yxl{display:none;position:absolute;left:.75rem;bottom:.75rem;z-index:3;display:grid;grid-template-columns:minmax(180px,auto) auto;gap:.45rem;max-width:min(680px,calc(100% - 1.5rem));padding:.6rem;border:1px solid rgba(0,0,0,.08);border-radius:8px;background:#faf7f2f0;color:#111827;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 10px 28px #0f172a1f;pointer-events:auto}.dark .mode-explorer.svelte-1r82yxl{background:#1f1f1ff0;border-color:#ffffff14;color:#e5e7eb;box-shadow:0 10px 28px #00000057}.mode-readout.svelte-1r82yxl{display:grid;gap:.08rem;font-size:.72rem;color:#4b5563}.view-readout.svelte-1r82yxl{grid-column:1 / -1;display:grid;gap:.05rem;padding:.44rem .5rem;border:1px solid rgba(0,0,0,.06);border-radius:6px;background:#ffffff94;color:#4b5563;font-size:.7rem}.dark .view-readout.svelte-1r82yxl{background:#ffffff0d;border-color:#ffffff14;color:#cbd5e1}.view-readout.svelte-1r82yxl strong:where(.svelte-1r82yxl){color:#111827;font-size:.76rem}.dark .view-readout.svelte-1r82yxl strong:where(.svelte-1r82yxl){color:#e5e7eb}.dark .mode-readout.svelte-1r82yxl{color:#cbd5e1}.mode-readout.svelte-1r82yxl .eyebrow:where(.svelte-1r82yxl){text-transform:uppercase;letter-spacing:.06em;font-size:.62rem;color:#6b7280}.dark .mode-readout.svelte-1r82yxl .eyebrow:where(.svelte-1r82yxl){color:#94a3b8}.mode-readout.svelte-1r82yxl strong:where(.svelte-1r82yxl){color:#15803d;font-family:ui-monospace,monospace;font-size:.92rem}.dark .mode-readout.svelte-1r82yxl strong:where(.svelte-1r82yxl){color:#86efac}.mode-actions.svelte-1r82yxl,.mode-filters.svelte-1r82yxl,.mode-play-styles.svelte-1r82yxl{display:inline-flex;align-items:center;gap:.25rem}.mode-actions.svelte-1r82yxl{grid-column:2;grid-row:1}.mode-filters.svelte-1r82yxl{grid-column:1 / -1;flex-wrap:wrap}.mode-play-styles.svelte-1r82yxl{grid-column:1 / -1;flex-wrap:wrap;padding-top:.1rem;border-top:1px solid rgba(0,0,0,.06)}.view-legend.svelte-1r82yxl{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .75rem}.view-legend.svelte-1r82yxl{color:#6b7280;font-size:.66rem}.view-legend.svelte-1r82yxl span:where(.svelte-1r82yxl){display:inline-flex;align-items:center;gap:.25rem}.swatch.svelte-1r82yxl{width:.65rem;height:.65rem;border-radius:2px;background:#94a3b8}.swatch.neg.svelte-1r82yxl{background:#2563eb}.swatch.node.svelte-1r82yxl{background:#e5e7eb;border:1px solid rgba(0,0,0,.16)}.swatch.pos.svelte-1r82yxl{background:#dc2626}.swatch.direct.svelte-1r82yxl{background:#16a34a}.swatch.reflect.svelte-1r82yxl{background:#f59e0b}.swatch.loop.svelte-1r82yxl{background:#06b6d4}.swatch.velocity.svelte-1r82yxl{background:#0ea5e9}.dark .mode-play-styles.svelte-1r82yxl{border-top-color:#ffffff14}.mode-explorer.svelte-1r82yxl button:where(.svelte-1r82yxl){border:1px solid rgba(0,0,0,.12);border-radius:5px;background:#fff;color:#374151;padding:.24rem .5rem;font-size:.7rem;text-transform:capitalize;cursor:pointer}.dark .mode-explorer.svelte-1r82yxl button:where(.svelte-1r82yxl){background:#2a2a2a;color:#e5e7eb;border-color:#ffffff24}.mode-explorer.svelte-1r82yxl button:where(.svelte-1r82yxl):hover:not(:disabled),.mode-explorer.svelte-1r82yxl button.active:where(.svelte-1r82yxl){background:#16a34a;color:#fff;border-color:#16a34a}.mode-explorer.svelte-1r82yxl button:where(.svelte-1r82yxl):disabled{opacity:.45;cursor:not-allowed}.mode-explorer.svelte-1r82yxl button:where(.svelte-1r82yxl) span:where(.svelte-1r82yxl){margin-left:.25rem;font-family:ui-monospace,monospace;opacity:.72}@media (max-width: 640px){.mode-explorer.svelte-1r82yxl{grid-template-columns:1fr;right:.75rem}.mode-actions.svelte-1r82yxl{grid-column:1;grid-row:auto}}.mode-explorer.svelte-1r82yxl{display:none!important}.mode-list.svelte-1xsps9n{display:flex;flex-direction:column;flex:1;min-height:0;padding:.75rem;gap:.5rem}.dark .mode-list.svelte-1xsps9n{color:#e5e5e5}.filters.svelte-1xsps9n{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.filter-btn.svelte-1xsps9n{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.75rem;text-transform:capitalize;border-radius:999px;border:1px solid rgba(0,0,0,.15);background:#fff;color:#333;cursor:pointer}.filter-btn.active.svelte-1xsps9n{background:var(--acoustics-accent, #16a34a);color:#fff;border-color:transparent}.dark .filter-btn.svelte-1xsps9n{background:#2a2a2a;color:#ddd;border-color:#ffffff26}.dark .filter-btn.active.svelte-1xsps9n{background:#16a34a;color:#fff}.dot.svelte-1xsps9n{display:inline-block;width:8px;height:8px;border-radius:50%}.count.svelte-1xsps9n{margin-left:auto;font-size:.75rem;color:#6b7280}.view-toggle.svelte-1xsps9n{display:inline-flex;gap:1px;padding:2px;border-radius:6px;background:#00000014}.view-toggle.svelte-1xsps9n button:where(.svelte-1xsps9n){border:0;border-radius:4px;background:transparent;color:#4b5563;padding:.25rem .55rem;font-size:.72rem;cursor:pointer}.view-toggle.svelte-1xsps9n button.active:where(.svelte-1xsps9n){background:#16a34a;color:#fff}.dark .view-toggle.svelte-1xsps9n{background:#ffffff1a}.dark .view-toggle.svelte-1xsps9n button:where(.svelte-1xsps9n){color:#d1d5db}.dark .view-toggle.svelte-1xsps9n button.active:where(.svelte-1xsps9n){color:#fff}.mapped-wrap.svelte-1xsps9n{flex:1;min-height:0;max-height:min(58vh,620px);border:1px solid rgba(0,0,0,.08);border-radius:.4rem;overflow:hidden;display:flex;flex-direction:column}.dark .mapped-wrap.svelte-1xsps9n{border-color:#ffffff14}.mapped-head.svelte-1xsps9n{display:grid;grid-template-columns:104px 1fr;background:#f3f4f6;border-bottom:1px solid rgba(0,0,0,.08);color:#4b5563;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.dark .mapped-head.svelte-1xsps9n{background:#2a2a2a;color:#d1d5db;border-bottom-color:#ffffff14}.piano-head.svelte-1xsps9n,.mode-head.svelte-1xsps9n{padding:.45rem .55rem}.mode-head.svelte-1xsps9n{display:flex;gap:.5rem}.mode-head.svelte-1xsps9n span:where(.svelte-1xsps9n){color:#6b7280;text-transform:none;letter-spacing:0;font-weight:500}.dark .mode-head.svelte-1xsps9n span:where(.svelte-1xsps9n){color:#9ca3af}.mapped-body.svelte-1xsps9n{position:relative;flex:1;min-height:0;overflow:auto;display:grid;grid-template-columns:104px minmax(520px,1fr);background:linear-gradient(to right,rgba(0,0,0,.055) 1px,transparent 1px) 104px 0 / calc((100% - 104px)/4) 100%,#fff}.dark .mapped-body.svelte-1xsps9n{background:linear-gradient(to right,rgba(255,255,255,.055) 1px,transparent 1px) 104px 0 / calc((100% - 104px)/4) 100%,#1f1f1f}.vertical-piano.svelte-1xsps9n,.mode-map.svelte-1xsps9n{position:relative;min-height:1400px}.vertical-piano.svelte-1xsps9n{background:linear-gradient(to right,#ddd,#e8e8e8);border-right:1px solid #bbb;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.dark .vertical-piano.svelte-1xsps9n{background:linear-gradient(to right,#181818,#1e1e1e);border-right-color:#444}.v-key.svelte-1xsps9n{position:absolute;left:0;width:100%;min-height:9px;border:0;border-top:1px solid rgba(0,0,0,.08);background:linear-gradient(to right,#f4f4f4,#fff 20%,#fff 80%,#f0f0f0);color:#8a8f98;cursor:pointer;text-align:left;padding:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.66rem;font-weight:600;overflow:hidden;box-sizing:border-box}.v-key.black.svelte-1xsps9n{left:0;width:66%;z-index:2;background:linear-gradient(to right,#3a3a3a,#333 20%,#2a2a2a 60%,#1a1a1a 90%,#111);color:#ffffff85;border-top-color:#ffffff14;border-radius:0 3px 3px 0;box-shadow:2px 0 3px #00000059,inset -1px 0 #ffffff0f}.v-key.c-note.svelte-1xsps9n:not(.black){background:linear-gradient(to right,#f0f0ee,#fafaf8 20%,#fafaf8 80%,#ececea);color:#5b6472}.v-key.selected.svelte-1xsps9n{background:linear-gradient(to right,#ffb347,#ff9a1a,#ff8c00)!important;color:#fff!important;outline:none;z-index:3;box-shadow:inset 0 0 0 1px #fff6,2px 0 3px #00000038}.v-key.black.selected.svelte-1xsps9n{background:linear-gradient(to right,#ff8c00,#ff6a00,#ff5100)!important;box-shadow:2px 0 2px #0000004d!important}.v-key.svelte-1xsps9n span:where(.svelte-1xsps9n){position:absolute;right:6px;top:50%;line-height:1;white-space:nowrap;transform:translateY(-50%);pointer-events:none}.v-key.black.svelte-1xsps9n span:where(.svelte-1xsps9n){right:5px}.dark .v-key.svelte-1xsps9n{background:linear-gradient(to right,#151515,#131313 20%,#131313 80%,#111);border-top-color:#333;color:#6b7280}.dark .v-key.c-note.svelte-1xsps9n:not(.black){background:linear-gradient(to right,#282828,#242424 20%,#242424 80%,#202020);border-top-color:#555;color:#9ca3af}.dark .v-key.black.svelte-1xsps9n{background:linear-gradient(to right,#d8d8d8,#e0e0e0 20%,#d4d4d4 60%,#c8c8c8 90%,#bbb);border:1px solid #444;border-left:none;color:#00000085;box-shadow:2px 0 3px #0000004d}.mode-map.svelte-1xsps9n{min-width:520px}.mode-group.svelte-1xsps9n{position:absolute;left:.55rem;right:.55rem;transform:translateY(-50%);z-index:2;pointer-events:none}.mode-group.expanded.svelte-1xsps9n{z-index:100}.group-summary.svelte-1xsps9n,.detail-row.svelte-1xsps9n{width:100%;border:1px solid rgba(0,0,0,.08);border-radius:4px;background:#ffffffeb;color:#111827;cursor:pointer;text-align:left;font-size:.76rem;box-shadow:0 1px 2px #0000000d;pointer-events:auto}.group-summary.svelte-1xsps9n{display:grid;grid-template-columns:52px 72px minmax(250px,1fr) 24px;align-items:center;gap:.45rem;min-height:26px;padding:.18rem .45rem}.detail-row.svelte-1xsps9n{display:grid;grid-template-columns:88px 82px 96px 98px 1fr;align-items:center;gap:.45rem;min-height:24px;padding:.16rem .45rem}.group-details.svelte-1xsps9n{display:flex;flex-direction:column;gap:.18rem;margin-top:.2rem;padding:.42rem;border-radius:7px;background:#fff;border:1px solid rgba(37,99,235,.24);box-shadow:0 14px 34px #0f172a2e,0 2px 6px #0f172a1f;pointer-events:auto}.dark .group-summary.svelte-1xsps9n,.dark .detail-row.svelte-1xsps9n{background:#2a2a2af0;border-color:#ffffff14;color:#e5e7eb}.dark .group-details.svelte-1xsps9n{background:#111827;border-color:#60a5fa52;box-shadow:0 14px 34px #0000007a,0 2px 6px #00000052}.mode-group.expanded.svelte-1xsps9n .group-summary:where(.svelte-1xsps9n){border-color:#2563eb4d;background:#eff6ff;box-shadow:0 4px 10px #2563eb1f}.dark .mode-group.expanded.svelte-1xsps9n .group-summary:where(.svelte-1xsps9n){background:#172554;border-color:#60a5fa57}.group-summary.svelte-1xsps9n:hover,.detail-row.svelte-1xsps9n:hover{background:#22c55e14;z-index:5}.detail-row.selected.svelte-1xsps9n{background:#22c55e2e;font-weight:600;z-index:6}.mode-group.note-match.svelte-1xsps9n .group-summary:where(.svelte-1xsps9n),.detail-row.note-match.svelte-1xsps9n{box-shadow:inset 3px 0 #2563eb;background:#2563eb14}.detail-row.selected.note-match.svelte-1xsps9n{background:#22c55e38}.group-note.svelte-1xsps9n,.group-count.svelte-1xsps9n,.group-chevron.svelte-1xsps9n{font-family:ui-monospace,SF Mono,Menlo,monospace;font-variant-numeric:tabular-nums;white-space:nowrap}.group-note.svelte-1xsps9n{font-weight:700}.group-kinds.svelte-1xsps9n{display:inline-flex;align-items:center;gap:.3rem;flex-wrap:wrap;color:#6b7280;font-size:.68rem}.kind-count.svelte-1xsps9n{display:inline-block;padding:.08rem .42rem;border-radius:999px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.kind-count.kind-axial.svelte-1xsps9n{background:#fde68a;color:#92400e}.kind-count.kind-tangential.svelte-1xsps9n{background:#bae6fd;color:#075985}.kind-count.kind-oblique.svelte-1xsps9n{background:#ddd6fe;color:#4c1d95}.group-chevron.svelte-1xsps9n{text-align:right;font-size:1rem;font-weight:700;color:#6b7280}.mode-index.svelte-1xsps9n,.mode-f.svelte-1xsps9n,.mode-note.svelte-1xsps9n,.mode-ratio.svelte-1xsps9n{font-variant-numeric:tabular-nums;font-family:ui-monospace,SF Mono,Menlo,monospace;white-space:nowrap}.kind-pill.svelte-1xsps9n{display:inline-block;padding:.1rem .5rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;border-radius:999px;font-weight:600}.kind-axial.svelte-1xsps9n,.dot.kind-axial.svelte-1xsps9n{background:#fde68a;color:#92400e}.dot.kind-axial.svelte-1xsps9n{background:#f59e0b}.kind-tangential.svelte-1xsps9n,.dot.kind-tangential.svelte-1xsps9n{background:#bae6fd;color:#075985}.dot.kind-tangential.svelte-1xsps9n{background:#38bdf8}.kind-oblique.svelte-1xsps9n,.dot.kind-oblique.svelte-1xsps9n{background:#ddd6fe;color:#4c1d95}.dot.kind-oblique.svelte-1xsps9n{background:#8b5cf6}.table-wrap.svelte-1xsps9n{flex:1;min-height:0;max-height:min(58vh,620px);overflow:auto;border:1px solid rgba(0,0,0,.08);border-radius:.4rem}.dark .table-wrap.svelte-1xsps9n{border-color:#ffffff14}table.svelte-1xsps9n{width:100%;border-collapse:collapse;font-size:.82rem}thead.svelte-1xsps9n{position:sticky;top:0;background:#f3f4f6;z-index:1}.dark thead.svelte-1xsps9n{background:#2a2a2a}th.svelte-1xsps9n{text-align:left;padding:.5rem .6rem;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#4b5563;border-bottom:1px solid rgba(0,0,0,.08);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dark th.svelte-1xsps9n{color:#d1d5db;border-bottom-color:#ffffff14}tbody.svelte-1xsps9n tr:where(.svelte-1xsps9n){cursor:pointer;border-bottom:1px solid rgba(0,0,0,.04)}.dark tbody.svelte-1xsps9n tr:where(.svelte-1xsps9n){border-bottom-color:#ffffff0a}tbody.svelte-1xsps9n tr:where(.svelte-1xsps9n):hover{background:#22c55e14}tbody.svelte-1xsps9n tr.selected:where(.svelte-1xsps9n){background:#22c55e2e;font-weight:600}tbody.svelte-1xsps9n tr.note-match:where(.svelte-1xsps9n){box-shadow:inset 3px 0 #2563eb;background:#2563eb14}tbody.svelte-1xsps9n tr.selected.note-match:where(.svelte-1xsps9n){background:#22c55e38}td.svelte-1xsps9n{padding:.4rem .6rem}td.num.svelte-1xsps9n{font-variant-numeric:tabular-nums;font-family:ui-monospace,SF Mono,Menlo,monospace}.chart-wrap.svelte-1t5wazd{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;gap:.55rem;padding:.75rem}.response-controls.svelte-1t5wazd{display:grid;gap:.45rem;padding:.58rem .65rem;border:1px solid rgba(17,24,39,.1);border-radius:.45rem;background:#ffffffb8}.response-control-head.svelte-1t5wazd{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.response-control-head.svelte-1t5wazd strong:where(.svelte-1t5wazd){color:#111827;font-size:.78rem}.response-presets.svelte-1t5wazd{display:flex;gap:.28rem}.response-presets.svelte-1t5wazd button:where(.svelte-1t5wazd){border:1px solid rgba(22,163,74,.45);border-radius:5px;background:#16a34a14;color:#15803d;font-size:.68rem;font-weight:700;padding:.28rem .45rem;cursor:pointer}.response-presets.svelte-1t5wazd button:where(.svelte-1t5wazd):hover{background:#16a34a;border-color:#16a34a;color:#fff}.response-part-list.svelte-1t5wazd{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.32rem}.response-range-control.svelte-1t5wazd{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:.55rem;align-items:center;padding-top:.15rem}.response-range-control.svelte-1t5wazd span:where(.svelte-1t5wazd){color:#6b7280;font-size:.66rem;line-height:1.28}.response-part.svelte-1t5wazd{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.35rem;align-items:start;min-width:0;padding:.38rem;border-radius:.35rem;background:#1118270a;color:#374151;font-size:.68rem;cursor:pointer}.response-part.svelte-1t5wazd input:where(.svelte-1t5wazd){margin-top:.08rem;accent-color:#16a34a}.response-part.svelte-1t5wazd span:where(.svelte-1t5wazd){display:grid;gap:.08rem;min-width:0}.response-part.svelte-1t5wazd b:where(.svelte-1t5wazd){color:#111827;font-size:.7rem}.response-part.svelte-1t5wazd em:where(.svelte-1t5wazd){color:#6b7280;font-size:.62rem;font-style:normal;line-height:1.2}@media (max-width: 860px){.response-part-list.svelte-1t5wazd{grid-template-columns:repeat(2,minmax(0,1fr))}.response-range-control.svelte-1t5wazd{grid-template-columns:1fr}}.dark .response-controls.svelte-1t5wazd{border-color:#ffffff1f;background:#ffffff0d}.dark .response-control-head.svelte-1t5wazd strong:where(.svelte-1t5wazd),.dark .response-part.svelte-1t5wazd b:where(.svelte-1t5wazd){color:#f3f4f6}.dark .response-part.svelte-1t5wazd{background:#ffffff0f;color:#d1d5db}.dark .response-part.svelte-1t5wazd em:where(.svelte-1t5wazd){color:#9ca3af}.dark .response-range-control.svelte-1t5wazd span:where(.svelte-1t5wazd){color:#9ca3af}svg.svelte-1t5wazd{width:100%;height:auto;max-height:70vh;display:block}.grid-line.svelte-1t5wazd{stroke:#0000000f;stroke-width:1}.grid-line.zero.svelte-1t5wazd{stroke:#0000002e}.dark .grid-line.svelte-1t5wazd{stroke:#ffffff14}.dark .grid-line.zero.svelte-1t5wazd{stroke:#ffffff38}.tick.svelte-1t5wazd{font-size:10px;fill:#6b7280;font-family:ui-monospace,monospace}.dark .tick.svelte-1t5wazd{fill:#9ca3af}.axis-label.svelte-1t5wazd{font-size:11px;fill:#4b5563}.dark .axis-label.svelte-1t5wazd{fill:#d1d5db}.response-line.svelte-1t5wazd{fill:none;stroke:#16a34a;stroke-width:1.6;pointer-events:none}.schroeder-line.svelte-1t5wazd{stroke:#dc2626;stroke-width:1.2;stroke-dasharray:5 4;opacity:.75;pointer-events:none}.schroeder-label.svelte-1t5wazd{fill:#991b1b;font-size:10px;font-weight:700;pointer-events:none}.dark .schroeder-line.svelte-1t5wazd{stroke:#fca5a5}.dark .schroeder-label.svelte-1t5wazd{fill:#fecaca}.selected-frequency-line.svelte-1t5wazd{stroke:#2563eb;stroke-width:1.5;stroke-dasharray:5 3;pointer-events:none}.selected-frequency-label.svelte-1t5wazd{fill:#1d4ed8;font-size:10px;font-family:ui-monospace,monospace;font-weight:700;pointer-events:none}.dark .selected-frequency-label.svelte-1t5wazd{fill:#93c5fd}.mode-tick.svelte-1t5wazd{cursor:pointer}.mode-tick.svelte-1t5wazd:hover{stroke-width:3}.tooltip.svelte-1t5wazd{position:absolute;background:#0f172aeb;color:#fff;padding:.3rem .5rem;border-radius:4px;font-size:.75rem;display:flex;gap:.4rem;pointer-events:none;font-family:ui-monospace,monospace;white-space:nowrap}.tooltip.svelte-1t5wazd strong:where(.svelte-1t5wazd){color:#86efac}.legend.svelte-1t5wazd{display:flex;gap:.85rem;flex-wrap:wrap;font-size:.75rem;color:#4b5563;padding:.25rem .25rem 0;text-transform:capitalize}.dark .legend.svelte-1t5wazd{color:#d1d5db}.legend-item.svelte-1t5wazd{display:inline-flex;align-items:center;gap:.3rem}.swatch.svelte-1t5wazd{display:inline-block;width:10px;height:10px;border-radius:2px}.legend-hint.svelte-1t5wazd{margin-left:auto;color:#9ca3af;font-style:italic}.piano-response.svelte-1t5wazd{margin-top:.5rem;padding:.45rem .5rem .5rem;border:1px solid rgba(0,0,0,.08);border-radius:6px;background:#ffffff85}.dark .piano-response.svelte-1t5wazd{background:#ffffff0a;border-color:#ffffff14}.piano-title.svelte-1t5wazd,.piano-scale.svelte-1t5wazd{display:flex;align-items:center;gap:.55rem;font-size:.72rem;color:#6b7280}.piano-title.svelte-1t5wazd{justify-content:space-between;margin-bottom:.35rem}.piano-title.svelte-1t5wazd strong:where(.svelte-1t5wazd){color:#111827;font-family:ui-monospace,monospace}.dark .piano-title.svelte-1t5wazd strong:where(.svelte-1t5wazd){color:#f8fafc}.piano-strip.svelte-1t5wazd{position:relative;height:42px;border-radius:4px;background:#e5e7eb;overflow:hidden}.piano-key.svelte-1t5wazd{position:absolute;bottom:0;height:100%;border:0;border-left:1px solid rgba(0,0,0,.16);border-radius:0;padding:0;cursor:pointer;color:#111827b3;font-size:.58rem}.piano-key.black.svelte-1t5wazd{height:62%;z-index:2;border:1px solid rgba(0,0,0,.45);color:transparent}.piano-key.svelte-1t5wazd span:where(.svelte-1t5wazd){position:absolute;bottom:2px;left:1px}.piano-key.peak.svelte-1t5wazd{background:#16a34a}.piano-key.lift.svelte-1t5wazd{background:#86efac}.piano-key.neutral.svelte-1t5wazd{background:#93c5fd}.piano-key.dip.svelte-1t5wazd{background:#fbbf24}.piano-key.deep.svelte-1t5wazd{background:#ef4444}.piano-key.black.peak.svelte-1t5wazd{background:#0f7a35}.piano-key.black.lift.svelte-1t5wazd{background:#15803d}.piano-key.black.neutral.svelte-1t5wazd{background:#111827}.piano-key.black.dip.svelte-1t5wazd{background:#b45309}.piano-key.black.deep.svelte-1t5wazd{background:#991b1b}.piano-key.selected.svelte-1t5wazd{outline:2px solid #2563eb;outline-offset:-2px;z-index:3}.piano-key.hovered.svelte-1t5wazd{box-shadow:inset 0 0 0 2px #0f172a;z-index:3}.dark .piano-key.hovered.svelte-1t5wazd{box-shadow:inset 0 0 0 2px #f8fafc}.hover-note-label.svelte-1t5wazd{fill:#111827;font-size:11px;font-family:ui-monospace,monospace;font-weight:700}.dark .hover-note-label.svelte-1t5wazd{fill:#f8fafc}.piano-scale.svelte-1t5wazd{justify-content:flex-end;margin-top:.35rem}.impact.svelte-1t5wazd{display:inline-block;width:10px;height:10px;border-radius:2px}.impact.peak.svelte-1t5wazd{background:#16a34a}.impact.neutral.svelte-1t5wazd{background:#93c5fd}.impact.deep.svelte-1t5wazd{background:#ef4444}.model-notes.svelte-1t5wazd{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .75rem;margin-top:.55rem;padding:.65rem .75rem;border:1px solid rgba(0,0,0,.08);border-radius:6px;background:#ffffff94;color:#4b5563;font-size:.74rem;line-height:1.35}.model-notes.svelte-1t5wazd div:where(.svelte-1t5wazd){display:flex;flex-direction:column;gap:.1rem;min-width:0}.model-notes.svelte-1t5wazd strong:where(.svelte-1t5wazd){color:#111827;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}.dark .model-notes.svelte-1t5wazd{background:#ffffff0a;border-color:#ffffff14;color:#cbd5e1}.dark .model-notes.svelte-1t5wazd strong:where(.svelte-1t5wazd){color:#f8fafc}@media (max-width: 720px){.model-notes.svelte-1t5wazd{grid-template-columns:1fr}}.ratio-panel.svelte-1ujglok{flex:1;min-height:0;overflow:auto;padding:1rem}.ratio-panel h3,.ratio-panel p,.ratio-panel svg,.ratio-panel label{margin:0!important;padding:0!important}.dark .ratio-panel.svelte-1ujglok{color:#e5e5e5}.grid.svelte-1ujglok{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.card.svelte-1ujglok{display:flex;flex-direction:column;gap:.55rem;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:.5rem;padding:.75rem .9rem}.dark .card.svelte-1ujglok{background:#232323;border-color:#ffffff14}.spans-2.svelte-1ujglok{grid-column:1 / -1}.card-header.svelte-1ujglok{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.card.svelte-1ujglok h3:where(.svelte-1ujglok){font-size:.95rem;font-weight:600}.ratio-card.svelte-1ujglok{gap:.35rem;padding-top:.7rem}.ratio-card.svelte-1ujglok .card-header:where(.svelte-1ujglok){margin-bottom:-.25rem}.layer-toggle.svelte-1ujglok{display:inline-flex;align-items:center;gap:.4rem;color:#4b5563;font-size:.76rem}.layer-toggle.svelte-1ujglok input:where(.svelte-1ujglok){margin:0;accent-color:#16a34a}.dark .layer-toggle.svelte-1ujglok{color:#d1d5db}.badge.svelte-1ujglok{font-size:.7rem;padding:.2rem .55rem;border-radius:999px;font-weight:600}.badge.ok.svelte-1ujglok{background:#22c55e2e;color:#14532d}.badge.bad.svelte-1ujglok{background:#dc26262e;color:#7f1d1d}.dark .badge.ok.svelte-1ujglok{color:#86efac}.dark .badge.bad.svelte-1ujglok{color:#fca5a5}.bolt-svg.svelte-1ujglok{width:100%;max-width:none;height:auto;align-self:center;cursor:crosshair;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ratio-legend-panel.svelte-1ujglok{display:grid;grid-template-columns:1fr;gap:.75rem;align-items:start;padding:.75rem;border:1px solid rgba(0,0,0,.08);border-radius:.45rem;background:#11182709}.dark .ratio-legend-panel.svelte-1ujglok{border-color:#ffffff14;background:#ffffff0a}.legend-top-row.svelte-1ujglok,.legend-notes.svelte-1ujglok{display:grid;grid-template-columns:1fr;gap:.75rem}.info-card.svelte-1ujglok{display:grid;gap:.45rem;padding:.65rem .75rem;border:1px solid rgba(0,0,0,.08);border-left-width:3px;border-left-color:#00000026;border-radius:.45rem;background:#fff9;font-size:.7rem;color:#4b5563;line-height:1.4}.dark .info-card.svelte-1ujglok{border-color:#ffffff14;border-left-color:#ffffff2e;background:#ffffff0a;color:#9ca3af}.info-card.svelte-1ujglok>strong:where(.svelte-1ujglok){color:#374151;font-size:.72rem;font-weight:600}.dark .info-card.svelte-1ujglok>strong:where(.svelte-1ujglok){color:#e5e7eb}.info-card.svelte-1ujglok p:where(.svelte-1ujglok),.info-card.svelte-1ujglok ol:where(.svelte-1ujglok){margin:0}.info-card.svelte-1ujglok ol:where(.svelte-1ujglok){padding-left:.95rem;display:grid;gap:.1rem}.info-card.accent-method.svelte-1ujglok{border-left-color:#1d4ed8}.info-card.accent-context.svelte-1ujglok{border-left-color:#f59e0b}.info-card.accent-citation.svelte-1ujglok{border-left-color:#00000038}.dark .info-card.accent-method.svelte-1ujglok{border-left-color:#60a5fa}.dark .info-card.accent-context.svelte-1ujglok{border-left-color:#fbbf24}.dark .info-card.accent-citation.svelte-1ujglok{border-left-color:#ffffff47}.toggle-grid.svelte-1ujglok{display:flex;flex-wrap:wrap;gap:.35rem 1rem}.bolt-svg.dragging.svelte-1ujglok{cursor:grabbing}.grid-line.svelte-1ujglok{stroke:#0000000f;stroke-width:1}.dark .grid-line.svelte-1ujglok{stroke:#ffffff14}.tick.svelte-1ujglok{font-size:10px;fill:#6b7280}.dark .tick.svelte-1ujglok{fill:#9ca3af}.axis-label.svelte-1ujglok{font-size:11px;fill:#4b5563}.dark .axis-label.svelte-1ujglok{fill:#d1d5db}.diagonal.svelte-1ujglok{stroke:#0000002e;stroke-width:1;stroke-dasharray:3 3}.dark .diagonal.svelte-1ujglok{stroke:#ffffff38}.fsi-outline.svelte-1ujglok{stroke:#16a34a;stroke-width:2.4;stroke-linecap:square;pointer-events:none}.dark .fsi-outline.svelte-1ujglok{stroke:#86efac}.bolt-area-cell.svelte-1ujglok{stroke:none;pointer-events:none}.bolt-area-outline.svelte-1ujglok{stroke:#1d4ed8;stroke-width:2.2;stroke-dasharray:5 4;stroke-linecap:square;pointer-events:none}.dark .bolt-area-cell.svelte-1ujglok{fill:#60a5fa2e}.dark .bolt-area-outline.svelte-1ujglok{stroke:#93c5fd}.rec-mark.svelte-1ujglok circle:where(.svelte-1ujglok){fill:#1d4ed8;stroke:#fff;stroke-width:1.2;cursor:help}.dark .rec-mark.svelte-1ujglok circle:where(.svelte-1ujglok){stroke:#1a1a1a}.rec-mark.svelte-1ujglok:hover circle:where(.svelte-1ujglok){fill:#2563eb;r:5}.room-pt.svelte-1ujglok{fill:#dc2626;stroke:#fff;stroke-width:2;transition:cx .15s ease,cy .15s ease;cursor:grab}.room-pt.inside.svelte-1ujglok{fill:#16a34a}.room-pt.off-chart.svelte-1ujglok{fill:#f59e0b;stroke-dasharray:3 2}.room-callout.svelte-1ujglok rect:where(.svelte-1ujglok){fill:#ffffffe6;stroke:#11182729}.room-callout.svelte-1ujglok text:where(.svelte-1ujglok){fill:#111827;font-size:10px;font-family:ui-monospace,monospace;font-weight:600}.room-callout.off-chart.svelte-1ujglok rect:where(.svelte-1ujglok){stroke:#f59e0b}.room-callout.off-chart.svelte-1ujglok text:where(.svelte-1ujglok){fill:#92400e}.dark .room-callout.svelte-1ujglok rect:where(.svelte-1ujglok){fill:#111827eb;stroke:#ffffff2e}.dark .room-callout.svelte-1ujglok text:where(.svelte-1ujglok){fill:#f8fafc}.dark .room-callout.off-chart.svelte-1ujglok text:where(.svelte-1ujglok){fill:#fbbf24}.legend-items.svelte-1ujglok{display:flex;flex-wrap:wrap;gap:.3rem 1rem}.legend-item.svelte-1ujglok{display:inline-flex;align-items:center;gap:.4rem}.gradient-key.svelte-1ujglok{display:grid;gap:.2rem}.gradient-ramp.svelte-1ujglok{display:block;width:100%;height:16px;border-radius:3px;border:1px solid rgba(0,0,0,.12);background:linear-gradient(90deg,#d9e021,#4cc16d 28%,#2aa198 55%,#355f8d 78%,#482173)}.gradient-labels.svelte-1ujglok{display:flex;justify-content:space-between;gap:.5rem;color:#6b7280;font-size:.64rem}.dark .gradient-labels.svelte-1ujglok{color:#9ca3af}.swatch.svelte-1ujglok{display:inline-block;width:12px;height:12px;border-radius:2px}.swatch.poly.svelte-1ujglok{background:transparent;border:2px solid #16a34a}.swatch.bolt-area.svelte-1ujglok{background:linear-gradient(135deg,#d9e021,#2aa198,#482173);border:2px dashed #1d4ed8}.swatch.heat.good.svelte-1ujglok{background:#33c167;opacity:.75}.swatch.heat.bad.svelte-1ujglok{background:#da3e3e;opacity:.65}.swatch.rec.svelte-1ujglok{background:#1d4ed8;border:1px solid white;border-radius:50%}.dark .swatch.rec.svelte-1ujglok{border-color:#1a1a1a}.swatch.room.svelte-1ujglok{background:#dc2626;border:2px solid white;border-radius:50%}.swatch.room.inside.svelte-1ujglok{background:#16a34a}.dark .swatch.room.svelte-1ujglok{border-color:#1a1a1a}.hint.svelte-1ujglok{margin:0;font-size:.75rem;color:#6b7280;line-height:1.4}.dark .hint.svelte-1ujglok{color:#9ca3af}.spacing-insight.svelte-1ujglok{margin:0;padding:.65rem .85rem;border:1px solid rgba(22,163,74,.25);border-left:3px solid #16a34a;border-radius:.45rem;background:#16a34a14;color:#14532d;font-size:.78rem;font-weight:500;line-height:1.45}.dark .spacing-insight.svelte-1ujglok{border-color:#22c55e4d;border-left-color:#4ade80;background:#22c55e1f;color:#bbf7d0}.bonello-bars.svelte-1ujglok{display:grid;gap:.25rem;height:180px;align-items:end}.bar-col.svelte-1ujglok{display:flex;flex-direction:column;align-items:center;gap:.15rem;font-size:.65rem}.bar-track.svelte-1ujglok{width:100%;height:130px;display:flex;align-items:flex-end;background:#0000000a;border-radius:2px}.dark .bar-track.svelte-1ujglok{background:#ffffff0d}.bar-fill.svelte-1ujglok{width:100%;background:#16a34a;border-radius:2px;transition:height .2s ease;min-height:1px}.bar-fill.fail.svelte-1ujglok{background:#dc2626}.bar-count.svelte-1ujglok{font-variant-numeric:tabular-nums;font-weight:600;color:#4b5563}.dark .bar-count.svelte-1ujglok{color:#d1d5db}.bar-label.svelte-1ujglok{color:#9ca3af}.summary-grid.svelte-1ujglok{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem}.summary-grid.svelte-1ujglok .lbl:where(.svelte-1ujglok){font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}.dark .summary-grid.svelte-1ujglok .lbl:where(.svelte-1ujglok){color:#9ca3af}.summary-grid.svelte-1ujglok .val:where(.svelte-1ujglok){font-size:1.1rem;font-weight:600;font-variant-numeric:tabular-nums;margin-top:.15rem}.summary-grid.svelte-1ujglok .sub:where(.svelte-1ujglok){font-size:.7rem;color:#9ca3af}@media (max-width: 720px){.grid.svelte-1ujglok{grid-template-columns:1fr}}.manual-backdrop.svelte-1y7qlrb{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:1rem;background:#0f172a7a}.manual.svelte-1y7qlrb{width:min(920px,100%);max-height:min(82vh,760px);display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(17,24,39,.12);border-radius:.6rem;background:#fffaf2;box-shadow:0 24px 80px #0f172a3d;color:#111827}header.svelte-1y7qlrb{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:.9rem 1rem;border-bottom:1px solid rgba(17,24,39,.1);background:#ffffffb8}header.svelte-1y7qlrb span:where(.svelte-1y7qlrb){color:#15803d;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}h2.svelte-1y7qlrb,h3.svelte-1y7qlrb,h4.svelte-1y7qlrb,p.svelte-1y7qlrb,ul.svelte-1y7qlrb,dl.svelte-1y7qlrb,dt.svelte-1y7qlrb,dd.svelte-1y7qlrb,li.svelte-1y7qlrb{box-sizing:border-box;font-family:inherit}h2.svelte-1y7qlrb{margin:0!important;font-size:1.05rem;line-height:1.2;color:#111827}.close-btn.svelte-1y7qlrb{width:2rem;height:2rem;border:1px solid rgba(17,24,39,.12);border-radius:.4rem;background:#fff;color:#374151;font-size:1.25rem;line-height:1;cursor:pointer}.close-btn.svelte-1y7qlrb:hover{background:#16a34a;border-color:#16a34a;color:#fff}.manual-body.svelte-1y7qlrb{display:grid;gap:.7rem;overflow:auto;padding:.85rem 1rem 1rem}.intro.svelte-1y7qlrb,.manual-section.svelte-1y7qlrb{padding:.75rem;border:1px solid rgba(17,24,39,.08);border-radius:.45rem;background:#ffffff9e}.intro.svelte-1y7qlrb{border-left:3px solid #16a34a}.intro.svelte-1y7qlrb strong:where(.svelte-1y7qlrb),h3.svelte-1y7qlrb{display:block;margin:0 0 .35rem!important;font-size:.82rem;line-height:1.25;color:#111827}h4.svelte-1y7qlrb{margin:.65rem 0 .3rem!important;color:#15803d;font-size:.7rem;font-weight:800;line-height:1.2;letter-spacing:.05em;text-transform:uppercase}.intro.svelte-1y7qlrb p:where(.svelte-1y7qlrb),.section-summary.svelte-1y7qlrb,li.svelte-1y7qlrb,dd.svelte-1y7qlrb{color:#4b5563;font-size:.75rem;line-height:1.45}.intro.svelte-1y7qlrb p:where(.svelte-1y7qlrb),.section-summary.svelte-1y7qlrb,p.svelte-1y7qlrb{margin:0!important}.section-summary.svelte-1y7qlrb{margin-bottom:.55rem!important}.control-list.svelte-1y7qlrb{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.control-item.svelte-1y7qlrb{display:grid;gap:.12rem;padding:.48rem;border-radius:.35rem;background:#1118270a}.control-item.svelte-1y7qlrb strong:where(.svelte-1y7qlrb){color:#111827;font-size:.72rem}.control-item.svelte-1y7qlrb span:where(.svelte-1y7qlrb){color:#4b5563;font-size:.68rem;line-height:1.35}ul.svelte-1y7qlrb{margin:0!important;padding:0 0 0 1.05rem!important;list-style:disc outside}li.svelte-1y7qlrb+li:where(.svelte-1y7qlrb){margin-top:.25rem}.limitations.svelte-1y7qlrb li:where(.svelte-1y7qlrb){color:#7c2d12}dl.svelte-1y7qlrb{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:0}dt.svelte-1y7qlrb{color:#15803d;font-size:.7rem;font-weight:800}dd.svelte-1y7qlrb{margin:.12rem 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.dark .manual.svelte-1y7qlrb{background:#181818;border-color:#ffffff1f;color:#f3f4f6}.dark header.svelte-1y7qlrb,.dark .intro.svelte-1y7qlrb,.dark .manual-section.svelte-1y7qlrb{background:#ffffff0d;border-color:#ffffff1a}.dark h2.svelte-1y7qlrb,.dark h3.svelte-1y7qlrb,.dark .control-item.svelte-1y7qlrb strong:where(.svelte-1y7qlrb),.dark .intro.svelte-1y7qlrb strong:where(.svelte-1y7qlrb){color:#f3f4f6}.dark .intro.svelte-1y7qlrb p:where(.svelte-1y7qlrb),.dark .section-summary.svelte-1y7qlrb,.dark li.svelte-1y7qlrb,.dark dd.svelte-1y7qlrb,.dark .control-item.svelte-1y7qlrb span:where(.svelte-1y7qlrb){color:#d1d5db}.dark .control-item.svelte-1y7qlrb{background:#ffffff0f}.dark .limitations.svelte-1y7qlrb li:where(.svelte-1y7qlrb){color:#fdba74}.dark .close-btn.svelte-1y7qlrb{background:#ffffff0f;border-color:#ffffff1f;color:#d1d5db}@media (max-width: 720px){dl.svelte-1y7qlrb,.control-list.svelte-1y7qlrb{grid-template-columns:1fr}}.rm-app.svelte-4suzv3{display:flex;flex-direction:column;gap:1rem}.layout.svelte-4suzv3{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1rem;align-items:stretch;grid-auto-rows:minmax(0,auto)}@media (max-width: 900px){.layout.svelte-4suzv3{grid-template-columns:1fr}.rm-panel{position:relative;top:auto;max-height:none}}.left-pane.svelte-4suzv3{display:flex;flex-direction:column;gap:.75rem;min-width:0;min-height:0}.tabs-row.svelte-4suzv3{display:flex;align-items:center;gap:.5rem}.tabs.svelte-4suzv3{display:flex;gap:.25rem;flex-wrap:wrap;border-bottom:1px solid rgba(0,0,0,.1);width:100%}.manual-btn.svelte-4suzv3{flex:0 0 auto;width:2rem;height:2rem;border:1px solid rgba(22,163,74,.45);border-radius:999px;background:#16a34a14;color:#15803d;font-size:.95rem;font-weight:800;line-height:1;cursor:pointer}.manual-btn.svelte-4suzv3:hover{background:#16a34a;border-color:#16a34a;color:#fff}.dark .manual-btn.svelte-4suzv3{background:#22c55e1f;border-color:#86efac52;color:#86efac}.dark .tabs.svelte-4suzv3{border-bottom-color:#ffffff1a}.tabs.svelte-4suzv3 button:where(.svelte-4suzv3){-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:.5rem .85rem;font-size:.85rem;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.dark .tabs.svelte-4suzv3 button:where(.svelte-4suzv3){color:#9ca3af}.tabs.svelte-4suzv3 button:where(.svelte-4suzv3):hover{color:#111}.dark .tabs.svelte-4suzv3 button:where(.svelte-4suzv3):hover{color:#f5f5f5}.tabs.svelte-4suzv3 button.active:where(.svelte-4suzv3){color:var(--acoustics-accent, #16a34a);border-bottom-color:var(--acoustics-accent, #16a34a);font-weight:600}.view.svelte-4suzv3{min-height:60vh;background:var(--qrd-bg, #faf7f2);border:1px solid rgba(0,0,0,.08);border-radius:.5rem;overflow:hidden;display:flex;flex-direction:column}.dark .view.svelte-4suzv3{background:#1a1a1a;border-color:#ffffff14}.summary-strip.svelte-4suzv3{position:sticky;bottom:0;z-index:5;display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem .75rem;background:var(--qrd-bg, #faf7f2);border:1px solid rgba(0,0,0,.08);border-radius:.5rem;font-size:.8rem}.dark .summary-strip.svelte-4suzv3{background:#1f1f1f;border-color:#ffffff14;color:#ddd}.summary-cell.svelte-4suzv3{display:flex;flex-direction:column;min-width:100px;padding:.25rem .5rem}.summary-cell.selected.svelte-4suzv3{border-left:3px solid #16a34a;padding-left:.5rem}.summary-cell.svelte-4suzv3 .label:where(.svelte-4suzv3){font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280}.dark .summary-cell.svelte-4suzv3 .label:where(.svelte-4suzv3){color:#9ca3af}.summary-cell.svelte-4suzv3 .value:where(.svelte-4suzv3){font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums}.summary-cell.svelte-4suzv3 .sub:where(.svelte-4suzv3){font-size:.7rem;color:#6b7280}.dark .summary-cell.svelte-4suzv3 .sub:where(.svelte-4suzv3){color:#9ca3af}.page-wrapper.svelte-1tgg4jo{min-height:100vh;display:flex;flex-direction:column;background:var(--acoustics-page-bg)}.dark .page-wrapper.svelte-1tgg4jo{background:#1a1a1a}.page-header.svelte-1tgg4jo{position:relative;background:linear-gradient(135deg,var(--acoustics-hero-start) 0%,var(--acoustics-hero-mid) 50%,var(--acoustics-hero-end) 100%);color:#fff;padding:1.5rem 2rem 4rem;text-align:center}.header-content.svelte-1tgg4jo{position:relative;z-index:1;max-width:700px;margin:0 auto}.page-title.svelte-1tgg4jo{font-size:clamp(1.75rem,5vw,2.75rem);font-weight:200;margin:0 0 .5rem;line-height:1.1;text-shadow:0 2px 10px rgba(0,0,0,.2)}.page-subtitle.svelte-1tgg4jo{font-size:clamp(.9rem,2vw,1.05rem);margin:0;opacity:.92}.header-divider.svelte-1tgg4jo{position:absolute;bottom:-1px;left:0;width:100%;height:80px;z-index:0}.header-divider.svelte-1tgg4jo svg:where(.svelte-1tgg4jo){width:100%;height:100%}.divider-fill.svelte-1tgg4jo{fill:var(--acoustics-page-bg)}.dark .divider-fill.svelte-1tgg4jo{fill:#1a1a1a}.page-content.svelte-1tgg4jo{flex:1;padding:2rem 1.5rem 4rem;max-width:1280px;margin:0 auto;width:100%;box-sizing:border-box}.breadcrumb.svelte-1tgg4jo{display:inline-flex;align-items:center;-moz-column-gap:.45rem;column-gap:.45rem;margin-bottom:1.5rem;font-size:.875rem;line-height:1.2;white-space:nowrap}.breadcrumb.svelte-1tgg4jo a:where(.svelte-1tgg4jo){display:inline-flex;width:auto;flex:0 0 auto;color:var(--acoustics-accent);text-decoration:none;font-weight:500}.breadcrumb.svelte-1tgg4jo a:where(.svelte-1tgg4jo):hover{color:var(--acoustics-accent-hover);text-decoration:underline}.breadcrumb.svelte-1tgg4jo svg:where(.svelte-1tgg4jo){width:14px;height:14px;color:#94a3b8;flex:0 0 14px}.breadcrumb.svelte-1tgg4jo span:where(.svelte-1tgg4jo){color:#64748b;font-weight:500}@media (max-width: 768px){.page-header.svelte-1tgg4jo{padding:1rem 1rem 3rem}.page-content.svelte-1tgg4jo{padding:1.5rem 1rem 3rem}}
