:root{color-scheme:dark light;--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "SFMono-Regular", "SF Mono", "Cascadia Code", "Roboto Mono", Menlo, Monaco, Consolas, monospace;--font-xs: .75rem;--font-sm: .875rem;--font-base: 1rem;--font-lg: 1.125rem;--focus-ring-color: color-mix(in srgb, var(--accent-color), transparent 70%);--base03: #002b36;--base02: #073642;--base01: #586e75;--base00: #657b83;--base0: #839496;--base1: #93a1a1;--base2: #eee8d5;--base3: #fdf6e3;--yellow: #b58900;--orange: #cb4b16;--red: #dc322f;--magenta: #d33682;--violet: #6c71c4;--blue: #268bd2;--cyan: #2aa198;--green: #859900;--bg-color: var(--base03);--panel-color: var(--base02);--text-color: var(--base1);--text-primary: var(--text-color);--text-secondary: var(--base0);--text-muted: var(--base01);--accent-color: var(--blue);--accent-hover: var(--cyan);--success-color: var(--green);--soloist-color: var(--magenta);--harmony-color: var(--violet);--smart-color: var(--violet);--error-color: var(--red);--yellow-rgb: 181, 137, 0;--cyan-rgb: 42, 161, 152;--magenta-rgb: 211, 54, 130;--chords-color-rgb: 38, 139, 210;--bass-color-rgb: 133, 153, 0;--soloist-color-rgb: 211, 54, 130;--harmony-color-rgb: 108, 113, 196;--groove-color-rgb: 147, 161, 161;--card-bg: #0a404e;--card-bg-hover: var(--base01);--border-color: rgba(147, 161, 161, .15);--border: var(--border-color);--input-bg: rgba(0, 43, 54, .4);--surface-sunken: var(--input-bg);--select-bg: var(--base03);--select-text: var(--base2);--select-border: var(--base01);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .5);--step-bg: rgba(147, 161, 161, .15);--step-bg-hover: rgba(147, 161, 161, .25);--beat-active: var(--yellow);--beat-inactive-odd: var(--base02);--beat-inactive-even: var(--base01);--beat-playing: var(--orange);--z-background: -1;--z-base: 1;--z-step: 2;--z-panel-content: 5;--z-controls: 10;--z-tabs: 10;--z-sidebar: 20;--z-panel-header: 50;--z-header: 90;--z-mobile-nav: 100;--z-floating: 500;--z-overlay: 1000;--z-modal: 2000;--z-toast: 3000;--z-maximized: 10000;--z-maximized-header: 10001;--anim-fast: .15s;--anim-normal: .25s;--anim-slow: .4s;--anim-ease: cubic-bezier(.4, 0, .2, 1);--anim-bounce: cubic-bezier(.34, 1.56, .64, 1)}[data-theme=light]{color-scheme:light;--bg-color: var(--base3);--panel-color: var(--base2);--text-color: var(--base02);--text-primary: var(--text-color);--text-secondary: var(--base01);--text-muted: var(--base00);--accent-color: var(--blue);--accent-hover: var(--cyan);--success-color: var(--green);--soloist-color: var(--magenta);--harmony-color: var(--violet);--error-color: var(--red);--chords-color-rgb: 38, 139, 210;--bass-color-rgb: 133, 153, 0;--soloist-color-rgb: 211, 54, 130;--harmony-color-rgb: 108, 113, 196;--groove-color-rgb: 7, 54, 66;--card-bg: var(--base3);--card-bg-hover: var(--base2);--border-color: rgba(7, 54, 66, .15);--border: var(--border-color);--input-bg: rgba(238, 232, 213, .5);--surface-sunken: var(--input-bg);--select-bg: var(--base3);--select-text: var(--base02);--select-border: var(--base1);--step-bg: rgba(7, 54, 66, .1);--step-bg-hover: rgba(7, 54, 66, .2);--beat-active: var(--yellow);--beat-inactive-odd: var(--base2);--beat-inactive-even: var(--base3)}*{box-sizing:border-box}[data-e2e-mode=true],[data-e2e-mode=true] *,[data-e2e-mode=true] *:before,[data-e2e-mode=true] *:after{transition:none!important;animation:none!important}body{font-family:var(--font-sans);background-color:var(--bg-color);color:var(--text-color);margin:0;display:flex;flex-direction:column;height:100dvh;overflow:hidden;touch-action:manipulation;transition:background-color var(--anim-normal) var(--anim-ease),color var(--anim-normal) var(--anim-ease),border-color var(--anim-normal) var(--anim-ease)}#flashOverlay{position:fixed;inset:0;background-color:#fff;opacity:0;pointer-events:none;z-index:var(--z-maximized);transition:opacity .05s}.stepper-btn:hover{background:#93a1a11a}.stepper-btn:active{background:#93a1a133}.stepper-control{transition:border-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease)}.stepper-control:focus-within{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--focus-ring-color)}header{background:color-mix(in srgb,var(--panel-color),var(--bg-color) 8%);padding:var(--space-4) var(--space-6);display:flex;justify-content:space-between;align-items:center;gap:1rem;box-shadow:var(--shadow-sm);z-index:var(--z-header);height:80px;position:sticky;top:0;border-bottom:1px solid var(--border-color)}#settingsBtn{padding:var(--space-2);background:transparent;border:none;border-radius:var(--radius-sm);font-size:1.2rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color var(--anim-fast) var(--anim-ease),background-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease)}#settingsBtn:hover{background:color-mix(in srgb,var(--accent-color),transparent 92%)}#settingsBtn:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}@media(max-width:600px){header{padding:.5rem .1rem;height:64px;gap:.05rem;max-width:100%;overflow:hidden;justify-content:space-between}.app-title-group{flex:1 1 auto;min-width:0;overflow:hidden}h1{font-size:.75rem;letter-spacing:-.07em;flex-shrink:1;min-width:0;z-index:1;padding-right:4px;width:100%;max-width:100%;overflow:hidden;text-overflow:ellipsis}.main-controls{gap:0;flex-shrink:0;justify-content:flex-end;min-width:0}.primary-btn{min-width:36px;font-size:.6rem;padding:.4rem .1rem;flex-shrink:0}input[type=number]{width:28px;font-size:.75rem;padding:0}.control-group{padding:.1rem;gap:.05rem}.control-label{display:none}#settingsBtn{margin-right:0;padding:.4rem .2rem;font-size:1.2rem}#tapBtn{padding:.2rem .25rem;font-size:.65rem}}.handle-tap{background-color:var(--accent-color);color:#fff;transform:scale(.95)}h1{margin:0;font-size:1.5rem;display:inline-block;width:fit-content;background:linear-gradient(45deg,var(--accent-color),var(--violet));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;white-space:nowrap}.main-controls{display:flex;gap:1rem;align-items:center}.primary-btn{background-color:var(--accent-color);color:#fff;border:none;padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);font-weight:700;cursor:pointer;transition:all var(--anim-fast) var(--anim-ease);font-size:var(--font-base);box-shadow:var(--shadow-sm);min-width:100px;height:42px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.primary-btn:hover{background-color:var(--accent-hover);transform:translateY(-1px)}.primary-btn:active{transform:translateY(0)}.primary-btn.playing{background-color:var(--error-color);box-shadow:0 4px 6px -1px #dc26264d}.control-group{display:flex;align-items:center;height:32px;background:var(--input-bg);border-radius:var(--radius-md);padding:0 var(--space-2);border:1px solid var(--border-color)}.control-label{font-size:var(--font-xs);text-transform:uppercase;color:var(--text-secondary);margin-right:.5rem;font-weight:700}input[type=number]{background:transparent;border:none;color:var(--text-color);font-size:1rem;width:60px;text-align:center;font-weight:700}input[type=number]:focus{outline:none}button{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-color);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--anim-fast) var(--anim-ease),border-color var(--anim-fast) var(--anim-ease),color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease),transform var(--anim-fast) var(--anim-ease)}button:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px;border-color:var(--accent-color)}.rel-key-btn{background:#94a3b81a;color:var(--accent-color);border:1px solid rgba(148,163,184,.2)}.header-btn{padding:var(--space-2);font-size:var(--font-sm);min-width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.header-btn--primary{background:var(--accent-color);color:#fff;border-color:var(--accent-color);font-weight:600;padding-inline:var(--space-3)}.header-btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.header-btn--icon{width:32px;min-width:32px;padding:0;font-size:1rem}@media(pointer:coarse){.header-btn,.header-btn--icon{min-height:44px;min-width:44px}.header-btn--icon{width:44px}}.app-main-layout{display:grid;grid-template-columns:1fr 380px;grid-template-rows:auto auto 1fr;grid-template-areas:"arranger sidebar" "visualizer sidebar" "empty sidebar";gap:1.5rem;padding:1.5rem;max-width:1600px;margin:0 auto;width:100%;min-height:calc(100vh - 80px)}#panel-arranger{grid-area:arranger;min-height:400px}#panel-visualizer{grid-area:visualizer;min-height:200px;transition:all .3s var(--anim-ease)}#panel-visualizer.collapsed{min-height:60px}@media(max-width:1100px){.app-main-layout{grid-template-columns:1fr 320px}}@media(max-width:900px){.app-main-layout{display:flex;flex-direction:column;gap:0;padding:.5rem}#panel-arranger,#panel-visualizer{grid-area:auto;min-height:0}.dashboard-panel{margin-bottom:.75rem}#panel-arranger{margin-bottom:1rem;order:1}#panel-visualizer{order:4;margin-bottom:2rem}}.library-label{font-size:.9rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;display:block}select{background-color:var(--select-bg);color:var(--select-text);border:1px solid var(--select-border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-sm);font-weight:500;cursor:pointer;transition:background-color var(--anim-fast) var(--anim-ease),border-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease);width:100%;box-shadow:0 1px 2px #0000001a}select:hover{border-color:var(--accent-color);background-color:var(--input-bg)}select:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px var(--focus-ring-color)}#timeSigSelect,#keySelect,#drumBarsSelect,#swingBaseSelect{width:auto;padding:.3rem .5rem;font-size:.85rem;height:32px}#timeSigSelect{min-width:60px}select option{background-color:var(--panel-color);color:var(--text-color)}.app-title-group{display:flex;flex-direction:column;gap:.15rem;min-width:0}.app-subtitle{margin:0;color:var(--text-muted);font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-main-layout.workspace-shell{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1.5rem;padding:1.5rem;max-width:1600px;margin:0 auto;width:100%;min-height:calc(100vh - 80px);align-items:start}.workspace-content{min-width:0;min-height:0;display:flex;flex-direction:column}.workspace-stage{display:flex;flex-direction:column;flex:1 1 auto;width:100%;min-width:0;min-height:0;animation:workspaceStageEnter var(--anim-normal) var(--anim-ease)}.workspace-stage--arranger{--workspace-accent: var(--accent-color)}.workspace-stage--studio{--workspace-accent: var(--violet)}.workspace-stage--visuals{--workspace-accent: var(--cyan)}.workspace-view{display:flex;flex-direction:column;gap:1.5rem;min-width:0;min-height:0}.workspace-studio-genre-header{flex-direction:column}.workspace-studio-genre-pills{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-bottom:0}.workspace-stats-grid,.workspace-shortcut-grid,.workspace-launch-grid,.workspace-status-grid{grid-template-columns:minmax(0,1fr)}.workspace-action-row{flex-direction:column}.workspace-action-row>*{width:100%}.workspace-visualizer-area{min-height:260px}@media(max-width:600px){.app-subtitle{display:none}}.dashboard-panel{background:var(--panel-color);border-radius:var(--radius-xl);padding:var(--space-5);border:1px solid var(--border-color);display:flex;flex-direction:column;box-shadow:var(--shadow-sm);position:relative;transition:border-color var(--anim-normal) var(--anim-ease),box-shadow var(--anim-normal) var(--anim-ease),background-color var(--anim-normal) var(--anim-ease);box-sizing:border-box;overflow:visible;min-width:0;--panel-accent: var(--accent-color)}.dashboard-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-top-left-radius:inherit;border-top-right-radius:inherit;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--panel-accent),transparent 25%) 16%,var(--panel-accent) 50%,color-mix(in srgb,var(--panel-accent),transparent 25%) 84%,transparent);pointer-events:none}.dashboard-panel.settings-open{overflow:visible;z-index:var(--z-panel-header)}.dashboard-panel.collapsed{padding-bottom:var(--space-3)}.dashboard-panel.collapsed .panel-header{margin-bottom:0;border-bottom:none}.dashboard-panel.collapsed .viz-graph-area,.dashboard-panel.collapsed .viz-legend{display:none}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-color);gap:var(--space-2);overflow:visible}.panel-title{margin:0}.panel-header-controls{display:flex;align-items:center;gap:var(--space-2)}.key-controls{display:flex;align-items:flex-start;gap:var(--space-1)}.time-sig-group{display:flex;flex-direction:column;align-items:center;gap:0}.time-sig-group select{width:100%;padding:0 var(--space-2);height:32px;font-size:var(--font-sm);border-radius:var(--radius-md)}@media(max-width:600px){#panel-arranger .panel-header{flex-direction:column;align-items:stretch;gap:.75rem;padding-bottom:.75rem}.panel-title-group{display:flex;justify-content:space-between;align-items:center;width:100%}.chord-panel-header .panel-title-group{display:flex;justify-content:space-between;align-items:center}.panel-header-controls{width:100%;display:flex;justify-content:space-between;gap:.5rem}.key-controls{flex-grow:1;display:grid;grid-template-columns:38px 1fr 1fr 38px 30px 30px;gap:.25rem;align-items:center}#keySelect{width:100%;max-width:none;padding-left:.4rem;padding-right:.2rem}.header-btn{width:100%;min-width:0;height:32px;padding:0}}.arranger-action-container{position:relative;display:flex;justify-content:flex-end}.action-trigger-btn{background:var(--accent-color);color:#fff;border:none;border-radius:var(--radius-md);padding:var(--space-3);font-weight:700;display:flex;align-items:center;gap:var(--space-2);cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease),transform var(--anim-fast) var(--anim-ease);z-index:var(--z-sidebar);font-size:var(--font-sm)}.action-trigger-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.action-trigger-btn.active{background:var(--base01)}.action-trigger-btn:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.action-menu-content{position:absolute;bottom:calc(100% + 5px);right:0;background:var(--panel-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-3);display:none;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--space-2);box-shadow:0 8px 24px #0006;z-index:var(--z-mobile-nav);min-width:280px;max-width:400px;width:auto;animation:menuFadeIn .2s ease-out}.action-menu-content.open{display:grid}.action-menu-content button{flex-direction:row;min-height:auto;padding:var(--space-3);font-size:var(--font-sm);justify-content:flex-start;width:100%}.menu-divider{grid-column:1 / -1;height:1px;background:var(--border-color);margin:.25rem 0;opacity:.5}.menu-section-header{grid-column:1 / -1;font-size:.65rem;text-transform:uppercase;color:var(--text-muted);padding:.75rem .5rem .25rem;letter-spacing:.1em;font-weight:700}.menu-section-header:first-of-type{padding-top:.25rem}.menu-click-away{position:fixed;inset:0;z-index:calc(var(--z-mobile-nav) - 1);background:transparent;cursor:default}#panel-arranger,#panel-chords{--panel-accent: var(--accent-color)}#panel-grooves{--panel-accent: var(--yellow)}#panel-bass{--panel-accent: var(--success-color)}#panel-soloist{--panel-accent: var(--soloist-color)}#panel-harmonies{--panel-accent: var(--harmony-color)}#panel-visualizer{--panel-accent: var(--cyan)}.chord-panel-header h2{color:var(--accent-color)}h2{margin:0;font-size:1.1rem;text-transform:uppercase;letter-spacing:.05em}.workspace-toolbar-popover{position:relative;z-index:var(--z-floating);display:inline-flex}.workspace-toolbar-trigger{gap:.35rem;min-width:0;padding-inline:.65rem}.workspace-toolbar-trigger.is-open{background:var(--card-bg-hover);border-color:color-mix(in srgb,var(--accent-color),transparent 45%)}.workspace-toolbar-trigger-copy{display:inline-flex;align-items:center;gap:.32rem;min-width:0}.workspace-toolbar-trigger-label{font-size:.76rem;font-weight:700;color:var(--text-secondary);white-space:nowrap}.workspace-toolbar-trigger-value{font-size:.8rem;font-weight:700;white-space:nowrap}.workspace-toolbar-trigger-caret{font-size:.78rem;color:var(--text-muted)}.workspace-toolbar-panel{position:absolute;top:calc(100% + .5rem);right:0;display:flex;flex-direction:column;align-items:stretch;gap:.7rem;opacity:0;visibility:hidden;transform:translateY(-.5rem) scale(.98);transform-origin:top right;pointer-events:none;transition:opacity .16s ease,transform .16s ease;padding:.75rem;border-radius:14px;border:1px solid var(--border-color);background:var(--panel-color);box-shadow:var(--shadow-lg);min-width:14rem;max-width:min(22rem,calc(100vw - 1.5rem));overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;z-index:var(--z-modal)}.workspace-toolbar-popover.is-open .workspace-toolbar-panel,.workspace-toolbar-panel.is-open{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:auto}@media(min-width:701px){.workspace-toolbar-panel--fixed{overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;z-index:var(--z-modal)}.workspace-toolbar-panel .workspace-fab-item{scroll-margin-block-start:6rem}}.workspace-fab-item{box-shadow:var(--shadow-md);width:100%;min-width:0;height:42px;padding:.5rem .9rem;border-radius:12px;display:inline-flex;align-items:center;justify-content:flex-start;gap:.65rem;background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-color);font-weight:700;text-align:left;transition:background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}.workspace-toolbar-panel .workspace-fab-item:hover,.workspace-toolbar-panel .workspace-fab-item:focus-visible{background:var(--accent-color);border-color:var(--accent-color);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md)}.workspace-fab-item--seed:hover,.workspace-fab-item--seed:focus-visible{background:var(--card-bg);border-color:var(--border-color);color:var(--text-color);transform:none;box-shadow:none}.workspace-toolbar-panel__section{display:flex;flex-direction:column;gap:.4rem;min-width:0}.workspace-toolbar-panel__label{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.workspace-toolbar-panel__action{display:block;width:100%;padding:var(--space-2) var(--space-3);text-align:left;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-color);font-size:var(--font-base);cursor:pointer}.workspace-toolbar-panel__action:hover,.workspace-toolbar-panel__action:focus-visible{background:var(--accent-color);color:#fff;outline:none}.workspace-toolbar-panel__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.workspace-toolbar-panel__button{min-width:0;min-height:34px;padding-inline:.55rem;white-space:nowrap}.workspace-toolbar-panel__button--wide{width:100%;justify-content:center}.workspace-toolbar-panel select{width:100%;max-width:none}.workspace-toolbar-panel--key{min-width:15rem}.workspace-toolbar-panel--seed{min-width:15.75rem}.workspace-toolbar-panel--seed .workspace-seed-control{width:100%}.workspace-toolbar-panel--seed .workspace-seed-row{justify-content:flex-start}.workspace-toolbar-panel--seed .seed-input{min-width:0;width:min(100%,7.5rem);flex:1 1 7rem}.workspace-arranger-toolbar-trigger--key{justify-content:space-between;min-width:0;padding-inline:.65rem}.setting-toggle-label{display:flex;align-items:center;gap:var(--space-1);color:var(--text-secondary);cursor:pointer;font-size:var(--font-xs)}.section-label{display:block;margin-bottom:var(--space-2);color:var(--text-secondary);font-size:var(--font-sm)}.stepper-control{display:flex;align-items:center;overflow:hidden;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--input-bg)}.stepper-btn{padding:var(--space-2) var(--space-3);border:none;background:transparent;color:var(--text-color);cursor:pointer;font-size:1.1rem;font-weight:700;transition:background-color var(--anim-fast) var(--anim-ease),color var(--anim-fast) var(--anim-ease),transform var(--anim-fast) var(--anim-ease)}.stepper-btn:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:-2px}.stepper-input{width:40px;padding:0;border:none;background:transparent;color:var(--text-color);text-align:center;font-weight:700;-moz-appearance:textfield}.tap-btn{height:24px;padding:0 var(--space-2);font-size:var(--font-xs)}.button-group{display:flex;align-items:center;gap:var(--space-1)}.button-group-btn{padding:var(--space-1) var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text-color);cursor:pointer;font-size:var(--font-xs);transition:background-color var(--anim-fast) var(--anim-ease),border-color var(--anim-fast) var(--anim-ease),color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease)}.button-group-btn.active{background:var(--accent-color);color:#fff}.button-group-btn:hover{border-color:var(--accent-color);background:var(--card-bg-hover)}.button-group-btn.active:hover{background:var(--accent-color)}.button-group-btn:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.seed-input{width:80px;padding:var(--space-1) var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text-primary);font-family:var(--font-mono);font-size:var(--font-xs);text-transform:uppercase}.seed-input:focus-visible{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px var(--focus-ring-color)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-1);line-height:1}#playBtn{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1;min-width:80px}@media(max-width:600px){#playBtn{width:7rem;padding:.35rem .25rem;white-space:nowrap}}.badge-btn{font-size:.65rem;color:var(--accent-color);font-weight:700;cursor:pointer;padding:1px var(--space-1);background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:var(--radius-sm);min-width:28px;text-align:center;margin-top:2px;font-family:inherit;line-height:inherit;display:inline-block;appearance:none;-webkit-appearance:none;transition:background-color var(--anim-fast) var(--anim-ease),border-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease)}.badge-btn:hover{background:#3b82f633;border-color:#3b82f666}.badge-btn:focus-visible{outline:2px solid var(--accent-color);outline-offset:1px}.display-area{--lead-vertical-fill: 1;--lead-vertical-gap-fill: 1;--lead-vertical-type-fill: 1;--lead-row-width: 100%;--lead-row-gap: .46rem;--lead-measure-gap: .3rem;--lead-marker-reserve: .72rem;--lead-marker-lane-gap: .14rem;--lead-marker-size: .64rem;--lead-measure-min-height: 54px;--lead-chord-min-height: 44px;--lead-card-padding: .24rem .18rem;--lead-font-size: clamp(1.16rem, 2.55vw, 1.72rem);background:linear-gradient(180deg,color-mix(in srgb,var(--input-bg),white 3%),color-mix(in srgb,var(--input-bg),black 2%));border-radius:18px;padding:clamp(.36rem,1.1vw,.9rem);margin-bottom:var(--space-2);position:relative;overflow-x:hidden;overflow-y:auto;min-height:200px;height:60vh;max-height:750px;border:1px solid var(--border-color);box-sizing:border-box;display:grid;gap:calc(var(--lead-row-gap) * var(--lead-vertical-gap-fill));align-content:start;align-items:start;scroll-behavior:smooth;scroll-padding-block:clamp(2rem,16vh,7rem);scroll-snap-type:y proximity;overscroll-behavior:contain;box-shadow:inset 0 1px #ffffff0a}.lead-sheet--compact{--lead-row-gap: .32rem;--lead-measure-gap: .22rem;--lead-marker-reserve: .56rem;--lead-marker-lane-gap: .1rem;--lead-marker-size: .56rem;--lead-measure-min-height: 40px;--lead-chord-min-height: 34px;--lead-card-padding: .14rem .12rem;--lead-font-size: clamp(1rem, 2.2vw, 1.28rem)}.lead-sheet--ultra-compact{--lead-row-gap: .2rem;--lead-measure-gap: .16rem;--lead-marker-reserve: .4rem;--lead-marker-lane-gap: .06rem;--lead-marker-size: .5rem;--lead-measure-min-height: 32px;--lead-chord-min-height: 28px;--lead-card-padding: .1rem .08rem;--lead-font-size: clamp(.86rem, 2.05vw, 1.08rem)}.lead-sheet--scroll-guided.lead-sheet--compact{--lead-row-gap: .38rem;--lead-measure-gap: .24rem;--lead-marker-reserve: .56rem;--lead-measure-min-height: 46px;--lead-chord-min-height: 38px;--lead-font-size: clamp(1.08rem, 2.35vw, 1.34rem)}.lead-sheet--scroll-guided.lead-sheet--ultra-compact{--lead-row-gap: .28rem;--lead-measure-gap: .18rem;--lead-marker-reserve: .44rem;--lead-measure-min-height: 38px;--lead-chord-min-height: 32px;--lead-font-size: clamp(.98rem, 2.18vw, 1.18rem)}.lead-sheet-section-group{display:grid;gap:calc(var(--lead-row-gap) * .8 * var(--lead-vertical-gap-fill));width:min(var(--lead-row-width),100%);margin-inline:auto;align-content:start;align-self:start;justify-items:stretch;position:relative;isolation:isolate;transition:transform var(--anim-fast) var(--anim-ease)}.lead-sheet-section-group--active:before{content:"";position:absolute;inset:-.16rem -.18rem;border-radius:20px;background:color-mix(in srgb,var(--accent-color),transparent 92%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-color),transparent 84%),0 10px 24px #00000014;pointer-events:none;z-index:0}.lead-sheet-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--lead-measure-gap);row-gap:0;width:100%;position:relative;align-items:start;isolation:isolate;scroll-snap-align:start;scroll-margin-block:clamp(1.6rem,12vh,6rem)}.lead-sheet-row--with-markers{row-gap:var(--lead-marker-lane-gap)}.lead-sheet-row--active:before{content:"";position:absolute;left:-.28rem;top:.16rem;bottom:.16rem;width:3px;border-radius:999px;background:color-mix(in srgb,var(--accent-color),transparent 18%);box-shadow:0 0 10px color-mix(in srgb,var(--accent-color),transparent 60%);z-index:2}.lead-sheet-row--upcoming .measure-box{border-color:color-mix(in srgb,var(--accent-color),transparent 78%);background:color-mix(in srgb,var(--panel-color),var(--accent-color) 4%)}.lead-sheet-marker-slot{min-width:0;min-height:calc(var(--lead-marker-reserve) * var(--lead-vertical-gap-fill));display:flex;align-items:flex-end;justify-content:flex-start;padding-left:.08rem;position:relative;z-index:1}.lead-sheet-row-marker{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;padding:.08rem .3rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent-color),transparent 58%);background:color-mix(in srgb,var(--accent-color),transparent 88%);color:var(--text-color);font-size:calc(var(--lead-marker-size) * var(--lead-vertical-type-fill));font-weight:800;letter-spacing:.08em;line-height:1;text-transform:uppercase;pointer-events:none;transition:border-color var(--anim-fast) var(--anim-ease),background-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease),color var(--anim-fast) var(--anim-ease)}.lead-sheet-marker-slot--section-active .lead-sheet-row-marker{border-color:color-mix(in srgb,var(--accent-color),transparent 48%);background:color-mix(in srgb,var(--accent-color),transparent 80%);box-shadow:inset 0 0 0 1px color-mix(in srgb,white,transparent 88%),0 3px 8px #0000000f}.lead-sheet-marker-slot--row-active .lead-sheet-row-marker{color:#fff;border-color:color-mix(in srgb,var(--accent-color),transparent 18%);background:color-mix(in srgb,var(--accent-color),white 6%);box-shadow:inset 0 0 0 1px color-mix(in srgb,white,transparent 72%),0 5px 12px color-mix(in srgb,var(--accent-color),transparent 84%)}.measure-box{display:flex;align-items:stretch;gap:0;min-width:0;min-height:calc(var(--lead-measure-min-height) * var(--lead-vertical-fill));position:relative;overflow:hidden;border:1px solid var(--border-color);border-radius:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel-color),white 4%),color-mix(in srgb,var(--panel-color),black 2%));box-shadow:inset 0 1px #ffffff0a,0 1px 2px #0000000d;z-index:1;scroll-margin-block:clamp(2rem,16vh,7rem);transition:border-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease),background-color var(--anim-fast) var(--anim-ease)}.measure-box:after{content:"";position:absolute;right:0;top:14%;bottom:14%;width:1px;background:color-mix(in srgb,var(--border-color),transparent 18%);pointer-events:none;opacity:.7}.measure-box--active{border-color:color-mix(in srgb,var(--accent-color),transparent 25%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-color),transparent 35%),0 0 0 1px color-mix(in srgb,var(--accent-color),transparent 75%),0 8px 22px color-mix(in srgb,var(--accent-color),transparent 90%);background:color-mix(in srgb,var(--panel-color),var(--accent-color) 8%)}.chord-card{flex:1 1 0;min-width:0;min-height:calc(var(--lead-chord-min-height) * var(--lead-vertical-fill));display:flex;align-items:center;justify-content:center;position:relative;padding:var(--lead-card-padding);background:transparent;border:none;border-radius:0;color:var(--text-color);font-size:calc(var(--lead-font-size) * var(--font-scale, 1) * var(--lead-vertical-type-fill));font-weight:700;line-height:.98;letter-spacing:-.025em;text-align:center;cursor:pointer;transition:background-color var(--anim-fast) var(--anim-ease),color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease)}.chord-card+.chord-card{border-left:1px solid color-mix(in srgb,var(--border-color),transparent 18%)}.chord-symbol{display:inline-flex;align-items:flex-start;justify-content:center;gap:.02em;max-width:100%;white-space:nowrap}.chord-card--with-sparkline{padding-bottom:.8rem}.chord-card.minor{color:var(--soloist-color)}.chord-card.aug{color:#a78bfa}.chord-card.active{background:var(--accent-color);color:#fff;box-shadow:inset 0 0 0 1px color-mix(in srgb,white,transparent 68%)}.root{display:inline-block;font-weight:760}.suffix{align-self:flex-start;font-size:.58em;margin-left:.02em;opacity:.82;transform:translateY(.04em)}.bass-note{align-self:flex-end;font-size:.64em;opacity:.74;margin-left:.06em;font-weight:500}.sparkline-container{position:absolute;bottom:0;left:0;width:100%;height:8px;display:flex;align-items:flex-end;gap:1px;padding:0 3px 2px;pointer-events:none;opacity:.55;overflow:hidden}.sparkline-bar{flex-grow:1;background:var(--soloist-color);border-radius:1px;min-width:2px;transition:height var(--anim-fast) var(--anim-ease)}.chord-card.active .sparkline-bar{background:#fff;opacity:.82}.preset-library{position:relative;isolation:isolate;display:flex;flex-direction:column;gap:var(--space-4)}.preset-library-toolbar{position:sticky;top:0;z-index:18;display:flex;flex-direction:column;gap:var(--space-3);padding:.9rem;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--panel-color),var(--bg-color) 12%);box-shadow:0 14px 28px #00000029,inset 0 1px #ffffff0a}.preset-library-toolbar:after{content:"";position:absolute;left:.75rem;right:.75rem;bottom:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 20%,rgba(255,255,255,.22) 50%,rgba(255,255,255,.08) 80%,transparent 100%);pointer-events:none}.preset-library-results{display:flex;flex-direction:column;gap:var(--space-4);padding-top:.2rem}.preset-library-search-row{display:flex;gap:var(--space-2);align-items:center}.preset-library-search-input{flex:1;min-width:0;padding:.75rem .875rem;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--input-bg);color:var(--text-color);font-size:.94rem}.preset-library-search-input::placeholder{color:var(--text-muted)}.preset-library-search-input:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px;border-color:var(--accent-color)}.preset-library-clear-btn{min-width:0;padding-inline:.9rem}.preset-library-toolbar-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.preset-library-summary{margin:0;color:var(--text-secondary);font-size:var(--font-sm)}.preset-library-favorites-toggle{white-space:nowrap}.preset-library-filter-group{display:flex;flex-direction:column;gap:var(--space-2)}.preset-library-filter-label{font-size:var(--font-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.preset-library-filter-chips{flex-wrap:wrap}.preset-library-section{display:flex;flex-direction:column;gap:var(--space-3)}.preset-library-section-header{display:flex;flex-direction:column;gap:.35rem}.preset-library-section-header h4{margin:0;font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.preset-library-section-header p{margin:0;color:var(--text-secondary);font-size:var(--font-sm);line-height:1.45}.preset-library-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17.5rem),17.5rem));justify-content:start;align-items:stretch;gap:var(--space-3)}.preset-library-card{--preset-accent: var(--accent-color);display:flex;flex-direction:column;gap:var(--space-2);width:100%;min-height:11.25rem;padding:var(--space-3);border:1px solid var(--border-color);border-left:4px solid var(--preset-accent);border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--input-bg),var(--card-bg-hover));box-shadow:0 12px 24px #00000024;transition:transform var(--anim-fast) var(--anim-ease),border-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease),background-color var(--anim-fast) var(--anim-ease);animation:fade-in-up var(--anim-normal) var(--anim-ease) both}.preset-library-card:hover,.preset-library-card:focus-within{transform:translateY(-2px);border-color:var(--preset-accent);box-shadow:0 16px 28px #0000002e;background:var(--card-bg-hover)}.preset-library-card.active{border-color:var(--preset-accent);box-shadow:0 0 0 1px var(--preset-accent),0 18px 32px #0003}.preset-library-card-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.preset-library-pin-btn,.preset-library-delete-btn{min-width:0;padding:.35rem .7rem;border:1px solid var(--border-color);border-radius:999px;background:transparent;color:var(--text-secondary);font-size:var(--font-xs);transition:background-color var(--anim-fast) var(--anim-ease),border-color var(--anim-fast) var(--anim-ease),color var(--anim-fast) var(--anim-ease)}.preset-library-pin-btn:hover,.preset-library-delete-btn:hover{border-color:var(--preset-accent);color:var(--text-primary)}.preset-library-pin-btn.active{border-color:var(--preset-accent);background:var(--preset-accent);color:#fff}.preset-library-pin-btn:focus-visible,.preset-library-delete-btn:focus-visible,.preset-library-card-button:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.preset-library-card-button{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:var(--space-2);width:100%;min-height:7rem;padding:0;background:transparent;border:0;color:var(--text-color);text-align:left}.preset-library-card-header{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between;width:100%}.preset-library-card-title{font-size:.95rem;font-weight:700;line-height:1.3;color:var(--text-primary)}.preset-library-card-badges{display:flex;flex-wrap:wrap;gap:var(--space-1)}.preset-library-badge{padding:.2rem .5rem;border-radius:999px;background:#ffffff0f;color:var(--text-secondary);font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.preset-library-card-preview{margin:0;color:var(--text-secondary);font-size:var(--font-sm);line-height:1.45;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.preset-library-card[data-source=user] .preset-library-card-preview{color:var(--text-color)}.preset-library-empty-state{display:flex;flex-direction:column;gap:var(--space-2);padding:1rem;border:1px dashed var(--border-color);border-radius:var(--radius-lg);background:var(--surface-sunken)}.preset-library-empty-state h4,.preset-library-empty-state p{margin:0}.preset-library-empty-state p{color:var(--text-secondary);line-height:1.5}.preset-library-card[data-category="Pop/Rock"]{--preset-accent: var(--blue)}.preset-library-card[data-category=Electronic],.preset-library-card[data-category=Experimental]{--preset-accent: var(--violet)}.preset-library-card[data-category="Soul/R&B"],.preset-library-card[data-category="Soul/Funk"]{--preset-accent: var(--magenta)}.preset-library-card[data-category=Blues]{--preset-accent: var(--cyan)}.preset-library-card[data-category="World/Latin"],.preset-library-card[data-category=Custom]{--preset-accent: var(--orange)}.preset-library-card[data-category=Jazz]{--preset-accent: var(--green)}.preset-library-card[data-category="Classical/Trad"],.preset-library-card[data-category="Rock/Metal"]{--preset-accent: var(--red)}.preset-library-card[data-category=Theory],.preset-library-card[data-category="Country/Folk"]{--preset-accent: var(--yellow)}@media(max-width:720px){.preset-library-toolbar{gap:var(--space-2);padding:.8rem}.preset-library-search-row{flex-wrap:wrap}.preset-library-search-input{padding:.7rem .8rem;font-size:1rem}.preset-library-clear-btn{width:auto;padding-inline:.75rem}.preset-library-toolbar-meta{align-items:stretch;gap:var(--space-1)}.preset-library-summary{font-size:.8rem;line-height:1.35}.preset-library-favorites-toggle{width:100%;justify-content:center}.preset-library-filter-group{gap:var(--space-1)}.preset-library-filter-label{font-size:.7rem}.preset-library-filter-chips{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:.35rem;padding-bottom:.15rem;scrollbar-width:none}.preset-library-filter-chips::-webkit-scrollbar{display:none}.preset-library-filter-chips .button-group-btn{flex:0 0 auto;white-space:nowrap}.preset-library-results{gap:var(--space-3)}.preset-library-section{gap:var(--space-2)}.preset-library-section-header h4{font-size:.76rem}.preset-library-section-header p{display:none}.preset-library-card-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}.preset-library-card{min-height:0;padding:.75rem;gap:.4rem;box-shadow:0 10px 18px #0000001f}.preset-library-card-button{min-height:0;gap:.35rem}.preset-library-card-title{font-size:.9rem}.preset-library-card-badges{gap:.15rem}.preset-library-badge{padding:.16rem .4rem;font-size:.62rem}.preset-library-card-preview{font-size:.8rem;-webkit-line-clamp:2}.preset-library-card-actions{gap:.35rem}.preset-library-pin-btn,.preset-library-delete-btn{padding:.3rem .6rem}.preset-library-empty-state{padding:.85rem}}body.modal-open{overflow:hidden}.settings-overlay,.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;justify-content:center;align-items:center;z-index:var(--z-modal);opacity:0;visibility:hidden;pointer-events:none;outline:none;transition:opacity var(--anim-normal) var(--anim-ease),visibility var(--anim-normal) var(--anim-ease)}.settings-overlay.active,.modal-overlay.active{opacity:1;visibility:visible;pointer-events:auto}.settings-overlay.closing,.modal-overlay.closing,.closing .settings-overlay,.closing .modal-overlay{opacity:0;pointer-events:none}.settings-content{background:var(--panel-color);padding:2rem;border-radius:12px;width:95%;max-width:800px;max-height:85vh;overflow-y:auto;border:1px solid var(--border-color);box-shadow:0 20px 25px -5px #00000080;color:var(--text-color);display:flex;flex-direction:column;animation:modal-in var(--anim-normal) var(--anim-ease) forwards}.closing .settings-content{animation:modal-out var(--anim-normal) var(--anim-ease) forwards}@keyframes modal-in{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modal-out{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.95) translateY(10px)}}.settings-controls{margin-top:1.5rem}.generate-modal-shell{min-height:700px;display:flex;flex-direction:column}.generate-modal-body{padding:var(--space-5);flex-grow:1}.generate-success{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 0;text-align:center}.generate-success-icon{font-size:4rem;margin-bottom:1rem;filter:drop-shadow(0 0 10px var(--accent-color))}.generate-success-title{margin-bottom:.5rem;color:var(--accent-color)}.generate-success-copy{color:var(--text-muted);font-size:.9rem;margin-bottom:2rem}.generate-success-button{width:100%;padding:1rem;font-size:1rem}.generate-mode-switcher{display:flex;justify-content:center;margin-bottom:2rem;padding:var(--space-2);background:var(--input-bg);border:1px solid var(--border-color);border-radius:12px}.generate-mode-toggle-group{gap:var(--space-2);width:100%}.generate-mode-toggle-group .button-group-btn{flex:1;padding:.75rem;font-size:1rem;border-radius:var(--radius-md)}.generate-copy{margin-bottom:1.5rem}.generate-section-spaced{margin-top:1rem}.generate-section-borderless{padding-bottom:0;margin-bottom:0}.generate-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;padding-bottom:1rem}.generate-template-card{display:flex;flex-direction:column;gap:.25rem;padding:1.25rem;border:1px solid var(--border-color);border-radius:12px;background:var(--input-bg);color:var(--text-color);cursor:pointer;text-align:left;transition:all .2s}.generate-template-card:hover{border-color:var(--accent-color);transform:translateY(-2px)}.generate-template-card-header{display:flex;justify-content:space-between;gap:1rem;font-size:1rem;font-weight:700;color:var(--accent-color)}.generate-template-card-confirm{color:var(--red);font-size:.8rem}.generate-template-card-meta{font-size:.75rem;color:var(--text-muted)}.generate-select--sm{min-width:100px}.generate-select--md{min-width:150px}.generate-text-input{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;background:var(--input-bg);color:var(--text-color)}.generate-value-highlight{margin-right:.5rem;color:var(--accent-color);font-weight:700}.generate-range{width:100px}.generate-subsection{margin-top:.5rem}.generate-submit-btn{width:100%;margin-top:1rem;padding:1rem;font-size:1rem}@media(min-width:900px){.settings-controls{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.settings-section:last-child{grid-column:span 2}}#editorOverlay .settings-content{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-radius:0;border:none;padding:0}.editor-modal{padding:0;overflow:hidden;display:flex;flex-direction:column;height:100%;background:var(--panel-color)}.modal-header,.modal-header-shared{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);background:var(--panel-color);flex-shrink:0}.modal-header h2,.modal-header-shared h2{margin:0;font-size:.9rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.editor-modal-header{padding:1rem 1rem .85rem;align-items:flex-start;gap:1rem}.editor-modal-header h2{color:var(--text-color);text-transform:none;letter-spacing:normal}.editor-modal-header-copy{min-width:0;display:flex;flex-direction:column;gap:.35rem}.editor-modal-kicker{margin:0;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.editor-modal-summary{margin:0;font-size:.9rem;color:var(--text-muted);line-height:1.45;max-width:56rem}.editor-modal-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;margin-left:auto}.editor-toolbar-btn{min-height:40px}.editor-action-container{position:relative}.editor-action-trigger{background:var(--input-bg);color:var(--text-color);border:1px solid var(--border-color);box-shadow:none;border-radius:999px;padding:.55rem .9rem}.editor-action-trigger:hover{background:var(--card-bg-hover);border-color:color-mix(in srgb,var(--accent-color),transparent 35%)}.editor-action-trigger.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.editor-action-trigger-label{font-size:.84rem}.editor-action-menu{top:calc(100% + .65rem);bottom:auto;right:0;min-width:min(32rem,calc(100vw - 2rem));max-width:min(36rem,calc(100vw - 2rem));padding:.9rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.55rem;background:color-mix(in srgb,var(--panel-color),var(--accent-color) 3%);border:1px solid color-mix(in srgb,var(--border-color),var(--accent-color) 18%);border-radius:18px;box-shadow:0 20px 40px #0206173d}.editor-action-menu>button{min-height:44px;border-radius:12px;background:color-mix(in srgb,var(--input-bg),var(--card-bg) 30%);border:1px solid color-mix(in srgb,var(--border-color),white 10%);padding:.75rem .85rem;font-weight:600;letter-spacing:.01em}.editor-action-menu>button:hover{border-color:color-mix(in srgb,var(--accent-color),transparent 28%);background:color-mix(in srgb,var(--input-bg),var(--accent-color) 10%)}.editor-action-menu .menu-divider{opacity:.32}.editor-action-menu .menu-section-header{padding-top:.3rem;padding-bottom:.15rem;color:var(--text-muted)}.editor-modal-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);background:color-mix(in srgb,var(--panel-color),black 3%)}.editor-modal-stats{display:flex;flex-wrap:wrap;gap:.5rem}.editor-stat-chip{display:inline-flex;align-items:center;min-height:30px;padding:.25rem .7rem;border-radius:999px;border:1px solid var(--border-color);background:var(--input-bg);font-size:.78rem;color:var(--text-muted)}@media(max-width:700px){.editor-modal-header-actions{width:100%;justify-content:flex-start;margin-left:0}.editor-toolbar-btn,.editor-action-container{width:100%}.editor-action-trigger{width:100%;justify-content:space-between}.editor-action-menu{left:0;right:0;min-width:100%;max-width:100%}}.close-btn{background:none;border:none;font-size:1.5rem;color:var(--text-muted);cursor:pointer;line-height:1}.close-btn:hover{color:var(--text-color)}.midi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;margin-bottom:1.5rem}.midi-ch-group label{display:block;margin-bottom:.3rem;font-size:.75rem;color:var(--text-muted)}.settings-help{margin-top:1.5rem;border-top:1px solid var(--border-color);padding-top:1.5rem}.settings-help summary{cursor:pointer;font-weight:700;color:var(--text-color);list-style:none;display:flex;align-items:center;justify-content:space-between}.settings-help summary::-webkit-details-marker{display:none}.summary-arrow{font-size:.8em;color:var(--accent-color)}.help-content{margin-top:1rem;font-size:.9rem;color:var(--text-secondary);line-height:1.6}.help-card{background:rgba(var(--accent-color-rgb),.1);padding:1rem;border-radius:8px;border:1px solid rgba(var(--accent-color-rgb),.2)}.help-card h4{color:var(--accent-color);margin-top:0;margin-bottom:.5rem}.manual-link{color:#fff;background:var(--accent-color);padding:.5rem 1rem;border-radius:6px;text-decoration:none;font-weight:700;display:inline-block;margin-top:.5rem}.manual-content{line-height:1.6;color:var(--text-secondary)}.manual-content h1{color:var(--text-color);font-size:1.8rem;margin-top:0;margin-bottom:1.5rem;border-bottom:2px solid var(--accent-color);padding-bottom:.5rem}.manual-content h2{color:var(--accent-color);font-size:1.4rem;margin-top:2rem;margin-bottom:1rem;border-bottom:1px solid var(--border-color);padding-bottom:.3rem}.manual-content h3{color:var(--text-color);font-size:1.1rem;margin-top:1.5rem;margin-bottom:.75rem}.manual-content p{margin-bottom:1rem}.manual-content ul,.manual-content ol{margin-bottom:1rem;padding-left:1.5rem}.manual-content li{margin-bottom:.5rem}.manual-content code{background:var(--input-bg);padding:.2rem .4rem;border-radius:4px;font-family:var(--font-mono);color:var(--accent-color);font-size:.9em}.manual-content hr{border:none;border-top:1px solid var(--border-color);margin:2rem 0}.table-container{width:100%;overflow-x:auto;margin:1.5rem 0;border:1px solid var(--border-color);border-radius:8px;background:#0003}.notation-table{width:100%;border-collapse:collapse;font-size:.85rem;min-width:500px}.notation-table th,.notation-table td{text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--border-color)}.notation-table th{color:var(--text-color);background:var(--input-bg);font-weight:700;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.notation-table tr:last-child td{border-bottom:none}.notation-table td strong{color:var(--text-color)}.app-version-display{text-align:center;margin-top:1.5rem;color:var(--text-muted);font-size:.8rem;opacity:.7}.editor-scroll-area{flex-grow:1;overflow-y:auto;padding:1rem;background:color-mix(in srgb,var(--bg-color),black 10%);-webkit-overflow-scrolling:touch}.modal-footer{padding:1rem;border-top:1px solid var(--border-color);background:var(--panel-color);position:relative;flex-shrink:0}.footer-primary-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.footer-main-btn{flex-grow:1;justify-content:center;padding:.5rem;font-size:.85rem}.section-list{display:flex;flex-direction:column;gap:.9rem;padding-bottom:1.5rem}@media(min-width:900px){#editorOverlay .settings-content{width:min(calc(100vw - 32px),1680px);max-width:min(calc(100vw - 32px),1680px);height:calc(100vh - 32px);max-height:calc(100vh - 32px);border-radius:20px;border:1px solid var(--border-color)}.editor-modal{margin:0;height:100%}.editor-modal-header{padding:1.1rem 1.4rem .95rem}.editor-modal-header h2{font-size:1.25rem}.editor-modal-toolbar{padding:.85rem 1.4rem}.editor-scroll-area{padding:1.25rem 1.4rem 1.5rem}.section-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem;align-content:start}.section-card{margin:0;height:fit-content;box-shadow:0 4px 6px -1px #0000001a;padding:1rem}.section-prog-input{min-height:92px}}.settings-section{margin-bottom:1.5rem;border-bottom:1px solid var(--border-color);padding-bottom:1rem}.settings-section--spaced{margin-top:1rem}.settings-section--borderless{border-bottom:none}.settings-section--no-padding{padding-bottom:0}.settings-action-center{justify-content:center}.settings-install-btn{display:none;justify-content:center}.settings-stepper-column{align-items:flex-end}.settings-estimated-time{color:var(--accent-color);font-weight:500}.settings-reset-panel{grid-column:1 / -1;display:flex;flex-direction:column;gap:.5rem;padding:.5rem;border:1px solid rgba(239,68,68,.2);border-radius:8px;background:#ef44441a}.settings-reset-copy{color:var(--text-color);font-size:.8rem;text-align:center}.settings-reset-actions{display:flex;gap:.5rem}.settings-reset-btn{flex:1;padding:.4rem;font-size:.8rem}.settings-reset-btn--primary{background:var(--red);color:#fff;border:none;font-weight:700}.settings-reset-btn--secondary{border-color:var(--border-color);color:var(--text-color);background:transparent}.settings-manual-btn{border:none;cursor:pointer;width:100%;text-align:center}.manual-modal{max-width:900px;height:90vh}.manual-modal-footer{margin-top:2rem}.settings-section h3{margin-top:0;color:var(--text-secondary);font-size:.9rem;text-transform:uppercase;margin-bottom:1rem}.setting-item{margin-bottom:1rem}.setting-label{display:flex;justify-content:space-between;margin-bottom:.4rem;font-size:.9rem}select,input[type=range]{accent-color:var(--accent-color)}#midiControls input[type=number]{background:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;padding:.3rem;width:100%;color:var(--text-color);font-size:.9rem;text-align:center}#midiLatencyValue{font-family:monospace;font-weight:700}#midiOutputSelect{width:100%;padding:.5rem;background:var(--input-bg);border:1px solid var(--border-color);color:var(--text-color);border-radius:4px}.section-card{background:color-mix(in srgb,var(--card-bg),black 4%);border:1px solid color-mix(in srgb,var(--border-color),white 8%);border-radius:16px;padding:.95rem;transition:border-color var(--anim-normal) var(--anim-ease),box-shadow var(--anim-normal) var(--anim-ease),transform var(--anim-normal) var(--anim-ease);position:relative;overflow:visible;animation:fade-in-up var(--anim-normal) var(--anim-ease) forwards}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fade-in-up var(--anim-normal) var(--anim-ease) forwards}.section-card:hover{border-color:color-mix(in srgb,var(--accent-color),transparent 30%);box-shadow:0 16px 32px #0206172e;transform:translateY(-1px)}.drag-handle{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 .3rem;border-radius:999px;border:1px solid var(--border-color);background:var(--input-bg);cursor:grab;color:var(--text-muted);font-size:.95rem;letter-spacing:-.18em;user-select:none;transition:color .2s}.drag-handle:hover{color:var(--accent-color)}.drag-handle:active,.section-card:active{cursor:grabbing}.section-card.dragging{opacity:.45;cursor:move}.section-card.drag-over{border-color:var(--accent-color);transform:scale(1.01);box-shadow:0 0 0 2px var(--accent-color-alpha);z-index:10}.section-actions{display:flex;align-items:center;gap:.2rem;flex-wrap:wrap;padding:.18rem;border:1px solid var(--border-color);border-radius:999px;background:var(--input-bg)}.section-move-btn,.section-duplicate-btn,.section-kebab-btn,.section-delete-btn,.section-link-btn{background:none;border:1px solid transparent;color:var(--text-muted);cursor:pointer;font-size:1rem;width:32px;height:32px;padding:0;border-radius:999px;transition:all .2s;display:flex;align-items:center;justify-content:center}.section-move-btn:hover,.section-duplicate-btn:hover,.section-kebab-btn:hover,.section-link-btn:hover{color:var(--text-color);background:color-mix(in srgb,var(--card-bg),white 8%);border-color:color-mix(in srgb,var(--accent-color),transparent 60%)}.section-link-btn.active{color:var(--accent-color);background:color-mix(in srgb,var(--accent-color),transparent 85%);border-color:color-mix(in srgb,var(--accent-color),transparent 40%);box-shadow:none}.section-link-btn.active:hover{background:color-mix(in srgb,var(--accent-color),transparent 78%)}.section-delete-btn:hover{color:var(--red);background:#ef44441a}.section-card.linked{border-color:color-mix(in srgb,var(--accent-color),transparent 38%);background:color-mix(in srgb,var(--card-bg),var(--accent-color) 6%);position:relative}.section-card.linked:before{content:none}.section-card:has(+.section-card.linked){z-index:var(--z-base)}.section-header{display:flex;flex-direction:column;gap:.65rem;margin-bottom:.75rem}.section-title-row{width:100%;display:flex;align-items:center;gap:.75rem}.section-title-meta{display:flex;align-items:center;gap:.45rem;flex-shrink:0}.section-status-chip{display:inline-flex;align-items:center;min-height:28px;padding:.1rem .55rem;border-radius:999px;background:color-mix(in srgb,var(--accent-color),transparent 86%);border:1px solid color-mix(in srgb,var(--accent-color),transparent 56%);color:var(--accent-color);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.section-controls-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;flex-wrap:wrap;width:100%}.section-label-input{width:100%;background:transparent;border:none;border-bottom:1px solid var(--border-color);color:var(--text-color);font-size:1rem;font-weight:700;padding:.15rem 0;transition:border-color .2s}.section-label-input:focus{outline:none;border-bottom-color:var(--accent-color)}.symbol-dropdown{position:absolute;top:100%;right:0;background:var(--panel-color);border:1px solid var(--border-color);border-radius:8px;padding:.5rem;display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;box-shadow:0 8px 16px #00000080;z-index:var(--z-floating);min-width:180px}.symbol-btn{padding:.4rem;font-size:.9rem;background:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;text-align:center;color:var(--text-color);transition:all .1s}.symbol-btn:hover{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.symbol-row{display:flex;overflow-x:auto;gap:.4rem;padding:.4rem .25rem;background:var(--panel-color);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:1;scrollbar-width:none}.symbol-row::-webkit-scrollbar{display:none}.symbol-row .symbol-btn{flex-shrink:0}@media(pointer:coarse){.symbol-btn{min-height:44px;min-width:44px;font-size:1rem}}.section-prog-input{width:100%;background:var(--input-bg);border:1px solid var(--border-color);border-radius:12px;padding:.75rem;color:var(--text-color);font-family:monospace;font-size:1rem;line-height:1.45;min-height:88px;resize:vertical;transition:border-color var(--anim-normal),box-shadow var(--anim-normal)}.section-prog-input.mutated{animation:mutated-pulse 1s var(--anim-ease)}@keyframes mutated-pulse{0%{border-color:var(--accent-color);box-shadow:0 0 0 0 var(--accent-color-alpha)}50%{border-color:var(--accent-hover);box-shadow:0 0 0 10px transparent;background:rgba(var(--chords-color-rgb),.1)}to{border-color:var(--border-color);box-shadow:0 0 0 0 transparent}}.section-prog-input:focus{outline:none;border-color:var(--accent-color)}.section-settings-row{display:flex;gap:.45rem;align-items:center;margin:0;flex-wrap:wrap}.section-setting-item,.form-control-compact{display:flex;align-items:center;background:var(--input-bg);border:1px solid var(--border-color);border-radius:999px;padding:.1rem .55rem;height:34px}.section-repeat-input{width:2rem;background:transparent;border:none;color:var(--text-color);font-weight:700;font-size:.88rem;padding:0;text-align:center}.section-repeat-input:focus{outline:none}.section-key-select,.section-ts-select{height:34px;padding:0 .7rem;font-size:.78rem;width:auto;min-width:92px;border-radius:999px;background:var(--input-bg);border:1px solid var(--border-color)}.section-setting-item .setting-label{font-size:.72rem;color:var(--text-muted);margin-right:.2rem}.section-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;width:100%;height:fit-content;padding:.85rem;border:1px solid color-mix(in srgb,var(--border-color),var(--accent-color) 18%);border-radius:20px;background:color-mix(in srgb,var(--panel-color),var(--accent-color) 3%);box-shadow:0 18px 36px #0206171f;isolation:isolate}.section-group .section-card{box-shadow:none;margin:0;min-width:0;height:100%;z-index:0}.section-group .section-card:hover{z-index:10;box-shadow:0 16px 32px #02061729}@media(max-width:900px){.section-group{display:flex;flex-direction:column;gap:.75rem;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none}.section-group .section-card{height:auto}}.instrument-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.75rem;margin-bottom:1.5rem;background:#0003;padding:1rem;border-radius:8px;border:1px solid var(--border-color)}@media(max-width:400px){.instrument-selection-grid{grid-template-columns:1fr}}.instrument-toggle-row{display:flex;flex-direction:row;gap:.75rem;cursor:pointer;align-items:center}.instrument-toggle-container{flex-shrink:0;display:flex}.share-modal-body{padding:var(--space-5)}.share-duration-value{margin-right:.5rem;color:var(--accent-color);font-weight:700}.share-destination-stack{gap:1.5rem;margin-top:1rem}.share-card{margin:0;padding:1.25rem}.share-card--accent{border-color:rgba(var(--accent-color-rgb),.3)}.share-card-title{margin-bottom:.5rem}.share-card-copy{margin-bottom:1rem}.share-actions{gap:.75rem}.share-action-btn{padding:.75rem}.share-action-btn--accent{border-color:var(--accent-color);color:var(--accent-color)}.share-filename-input{background:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-color);padding:.5rem}.instrument-toggle-label{font-weight:500;white-space:nowrap}.editor-action-trigger{justify-content:center;padding:.75rem 1rem}.editor-action-trigger-icon{font-size:1.2rem}.editor-clear-confirm{grid-column:1 / -1;padding:.7rem;margin:0;background:#ff000014;border:1px solid rgba(239,68,68,.22);border-radius:10px}.editor-clear-confirm-copy{margin-bottom:.5rem;color:var(--text-color);font-size:.8rem;text-align:center}.editor-clear-confirm-actions{display:flex;gap:.5rem}.editor-clear-confirm-btn{flex:1;min-height:36px;padding:.4rem .55rem;border:none;border-radius:8px;cursor:pointer;font-size:.8rem}.editor-clear-confirm-btn--danger{background:var(--red);color:#fff}.editor-clear-confirm-btn--secondary{background:transparent;color:var(--text-color);border:1px solid var(--border-color)}.divider-top{border-top:1px solid var(--border-color);padding-top:var(--space-4);margin-top:var(--space-4)}.power-btn{background:var(--input-bg);border:1px solid var(--border-color);color:var(--text-muted);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color var(--anim-fast) var(--anim-ease),background-color var(--anim-fast) var(--anim-ease),border-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease),transform var(--anim-fast) var(--anim-ease);font-size:var(--font-base);padding:0}.power-btn:hover{color:var(--text-color);border-color:var(--text-muted);background:#ffffff0d}.power-btn.active{color:var(--green);border-color:var(--green);background:#8599001a;box-shadow:0 0 10px #85990033}.power-btn:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.panel{background:var(--panel-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-5);position:relative;overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5)}.panel-header h2{margin:0;font-size:var(--font-lg);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.setting-group{margin-bottom:var(--space-6);padding-bottom:var(--space-2)}.setting-group-title{margin-top:0;margin-bottom:var(--space-4);font-size:var(--font-sm);color:var(--accent-color);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);padding-bottom:var(--space-2)}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-5);margin-bottom:var(--space-4);min-height:2.5rem;flex-wrap:wrap}.setting-row:last-child{margin-bottom:0}.setting-info{flex:1;display:flex;flex-direction:column;gap:var(--space-1);min-width:120px}.setting-label{font-size:var(--font-sm);font-weight:500;color:var(--text-color)}.setting-description{font-size:var(--font-xs);color:var(--text-muted);line-height:1.4}.setting-control{display:flex;align-items:center;gap:var(--space-3);min-width:fit-content}.setting-value-display{font-size:var(--font-sm);color:var(--accent-color);font-family:var(--font-mono);min-width:3.5rem;text-align:right}.toggle-switch{position:relative;display:inline-block;width:36px;height:20px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;inset:0;background-color:var(--input-bg);border:1px solid var(--border-color);transition:background-color var(--anim-fast) var(--anim-ease),border-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease);border-radius:999px}.toggle-slider:before{position:absolute;content:"";height:14px;width:14px;left:2px;bottom:2px;background-color:var(--text-muted);transition:transform var(--anim-fast) var(--anim-ease),background-color var(--anim-fast) var(--anim-ease);border-radius:50%}input:checked+.toggle-slider{background-color:var(--accent-color);border-color:var(--accent-color)}input:checked+.toggle-slider:before{transform:translate(16px);background-color:#fff}input:focus-visible+.toggle-slider{outline:2px solid var(--accent-color);outline-offset:2px}.setting-control>select{padding:var(--space-2) var(--space-3);font-size:var(--font-sm);width:220px}.setting-control input[type=range]{width:120px}.grid-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.form-control-compact{display:flex;align-items:center;background:var(--input-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:0 var(--space-2);height:28px}.smart-tab-layout{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-1) 0}.smart-tab-label{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.chip-grid{display:flex;flex-wrap:wrap;gap:var(--space-2)}.notification-box{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:var(--panel-color);border:1px solid var(--border-color);color:var(--text-color);padding:.75rem 1.5rem;border-radius:12px;box-shadow:0 10px 25px #00000080;z-index:var(--z-modal);display:flex;align-items:center;gap:1rem;min-width:280px;max-width:90vw}.flex-row{display:flex;align-items:center;gap:.5rem}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-col{display:flex;flex-direction:column;gap:.5rem}.grid-2-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.w-full{width:100%}.text-mini-muted{font-size:.75rem;color:var(--text-muted)}.danger-btn{color:var(--error-color);background:#ef44441a;border-color:#ef444433}.update-banner{position:fixed;top:20px;left:50%;transform:translate(-50%) translateY(-200%);background:var(--panel-color);border:1px solid var(--accent-color);padding:1rem;border-radius:8px;display:flex;align-items:center;gap:1rem;box-shadow:0 4px 12px #0000004d;z-index:var(--z-toast);transition:transform .4s cubic-bezier(.4,0,.2,1)}.update-banner.show{transform:translate(-50%) translateY(0)}.update-banner span{font-size:.9rem;font-weight:500}#updateRefreshBtn{background:var(--accent-color);color:#fff;border:none;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-weight:700;font-size:var(--font-sm);cursor:pointer}#updateRefreshBtn:hover{background:var(--accent-hover)}#updateRefreshBtn:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}@media(max-width:600px){.update-banner{left:10px;right:10px;top:10px;transform:translateY(-200%);flex-direction:column;align-items:stretch;text-align:center}.update-banner.show{transform:translateY(0)}}.viz-graph-area{flex-grow:1;min-height:500px;position:relative;background:color-mix(in srgb,var(--surface-sunken),var(--panel-color) 22%);border:1px solid color-mix(in srgb,var(--border-color),transparent 20%);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-color),transparent 92%)}#unifiedVizContainer{width:100%;flex-grow:1}.viz-legend{display:flex;gap:1rem 1.5rem;margin-top:.25rem;flex-wrap:wrap;font-size:.8rem;color:var(--text-secondary);padding:.75rem .9rem;background:color-mix(in srgb,var(--panel-color),var(--surface-sunken) 50%);border:1px solid color-mix(in srgb,var(--border-color),transparent 12%);border-radius:8px;align-items:center}.legend-group{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.legend-label{font-weight:700;color:var(--text-primary);text-transform:uppercase;font-size:.7rem;letter-spacing:.05em;margin-right:.25rem}.legend-item{display:flex;align-items:center;gap:.4rem}.legend-swatch{width:10px;height:10px;border-radius:2px;border:1px solid color-mix(in srgb,var(--text-color),transparent 78%)}.swatch-root{background:var(--accent-color)}.swatch-third{background:var(--green)}.swatch-fifth{background:var(--orange)}.swatch-seventh{background:var(--violet)}.swatch-bass{background:var(--success-color)}.swatch-chords{background:var(--accent-color)}.swatch-harmony{background:var(--harmony-color)}.swatch-drums{background:var(--yellow)}.swatch-soloist{background:var(--soloist-color)}@media(max-width:700px){.workspace-view--visuals #panel-visualizer{gap:.35rem}.workspace-view--visuals #panel-visualizer .panel-header{padding-bottom:.25rem}.workspace-view--visuals .workspace-visualizer-area,.workspace-view--visuals .viz-graph-area{min-height:clamp(170px,32dvh,240px)}.viz-legend{gap:.3rem .65rem;padding:.45rem .6rem;font-size:.7rem;align-items:flex-start}.legend-group{gap:.35rem .5rem;flex:1 1 calc(50% - .35rem);min-width:0;align-items:flex-start}.legend-item{gap:.24rem}.legend-label{font-size:.58rem}.legend-swatch{width:7px;height:7px}}.toast{background:var(--success-color);color:#fff;padding:.6rem 1.25rem;border-radius:20px;font-weight:700;box-shadow:0 10px 15px -3px #0000004d;font-size:.9rem;letter-spacing:.02em;pointer-events:auto;animation:toast-in var(--anim-normal) var(--anim-bounce) forwards}.toast.closing{animation:toast-out var(--anim-normal) var(--anim-ease) forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-10px) scale(.9)}}.chart-surface{display:grid;grid-template-areas:"topbar topbar" "chart  rail";grid-template-columns:1fr 320px;grid-template-rows:auto 1fr;height:100dvh}.chart-surface__topbar{grid-area:topbar;display:flex;align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--bg-color);flex-wrap:wrap}.chart-surface__zone{display:flex;align-items:center;gap:var(--space-2)}.chart-surface__zone--shape{margin-left:auto}@media(min-width:1024px){.chart-surface__zone--shape,.chart-surface__zone--output{position:relative;padding-left:var(--space-4)}.chart-surface__zone--shape:before,.chart-surface__zone--output:before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:1px;background:var(--border-color)}}.chart-surface__overflow-menu{display:flex;flex-direction:column;padding:var(--space-1);gap:var(--space-1)}.chart-surface__chart{grid-area:chart;display:flex;flex-direction:column;min-height:0}.chart-surface__chart .display-area{height:100%;min-height:0;max-height:none;margin-bottom:0;align-content:safe center}.chart-surface__rail{grid-area:rail;overflow-y:auto;overflow-x:hidden;min-height:0}@media(max-width:1023px){.chart-surface{grid-template-areas:"topbar" "chart" "rail";grid-template-columns:1fr;grid-template-rows:auto 1fr auto}}@media(max-width:639px){.chart-surface__rail{overflow-x:auto;overflow-y:hidden;white-space:nowrap}}@media(max-width:640px){.chart-surface{grid-template-areas:"topbar" "chart";grid-template-columns:1fr;grid-template-rows:auto 1fr}.chart-surface__chart{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}.chart-surface__topbar{display:grid;grid-template-areas:"play   output" "shape  shape";grid-template-columns:1fr auto;row-gap:var(--space-1);column-gap:var(--space-2)}.chart-surface__zone--play{grid-area:play}.chart-surface__zone--shape{grid-area:shape;margin-left:0;justify-content:flex-end}.chart-surface__zone--output{grid-area:output}}.mobile-action-bar{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-sidebar);display:none;align-items:stretch;gap:var(--space-1);padding:var(--space-1) var(--space-2) calc(var(--space-1) + env(safe-area-inset-bottom,0px));background:var(--panel-color);border-top:1px solid var(--border-color);box-shadow:0 -4px 16px #0003}@media(max-width:640px){.mobile-action-bar{display:flex}}.mobile-action-bar__btn{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-height:56px;padding:var(--space-1);background:transparent;border:0;border-radius:12px;color:var(--text-secondary);font-size:.7rem;font-weight:600;cursor:pointer;transition:background var(--anim-fast) var(--anim-ease),color var(--anim-fast) var(--anim-ease)}.mobile-action-bar__btn:hover{color:var(--text-primary)}.mobile-action-bar__btn.is-active{color:var(--accent-color);background:color-mix(in srgb,var(--accent-color),transparent 88%)}.mobile-action-bar__icon{font-size:1.25rem;line-height:1}.mobile-action-bar__label{font-size:.7rem;line-height:1}.mobile-mix-sheet.workspace-studio-surface--modal{width:min(100vw,32rem);max-height:88dvh;bottom:calc(64px + env(safe-area-inset-bottom,0px) + var(--space-2));top:auto;left:50%;transform:translate(-50%)}.mobile-mix-sheet .instrument-rail{padding:0;background:transparent;border:0;box-shadow:none}.mobile-mix-sheet .workspace-studio-live-mix-header>div:first-child{display:none}.viz-overlay{position:fixed;inset:0;background:#000000d9;z-index:var(--z-modal);display:flex;flex-direction:column;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}.viz-overlay__header{display:flex;justify-content:flex-end;padding:var(--space-2) var(--space-4);flex-shrink:0}.viz-overlay__body{flex:1;display:flex;flex-direction:column;min-height:0;padding:0 var(--space-4) var(--space-4);gap:var(--space-3)}.viz-overlay__body .viz-graph-area{flex:1;min-height:0}.chart-surface__shared-pill{display:flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:999px;background:var(--accent-color);color:#fff;font-size:.75rem;line-height:1;white-space:nowrap}.chart-surface__shared-pill button{background:none;border:none;color:inherit;cursor:pointer;padding:0 .1rem;font-size:.9rem;line-height:1}.instrument-rail--vertical .workspace-studio-live-mix-header{flex-direction:column;align-items:stretch;gap:var(--space-2)}.instrument-rail--vertical .workspace-studio-live-mix-header>div:first-child .workspace-kicker{display:none}.instrument-rail--vertical .workspace-studio-live-mix-tools{margin-left:0;justify-content:flex-start}.instrument-rail--vertical .workspace-studio-mix-row-copy p{display:none}.instrument-rail--horizontal{display:flex;flex-direction:row;align-items:stretch;overflow:hidden;padding:0;gap:0;border-radius:0}.instrument-rail--horizontal .workspace-studio-live-mix-header,.instrument-rail--horizontal .workspace-studio-panel-genre,.instrument-rail--horizontal .workspace-studio-mixer-accordion{display:none}.instrument-rail--horizontal .workspace-studio-live-mix-rows{display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;flex:1;gap:var(--space-2);padding:var(--space-2);align-items:stretch}.instrument-rail--horizontal .workspace-studio-mix-row{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:var(--space-1);padding:var(--space-2);min-width:72px;flex-shrink:0;text-align:center}.instrument-rail--horizontal .workspace-studio-mix-row-main{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.instrument-rail--horizontal .workspace-studio-mix-row-copy h3{font-size:.72rem}.instrument-rail--horizontal .workspace-studio-mix-row-actions{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.workspace-kicker{margin:0 0 .25rem;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.workspace-studio-live-mix{--studio-mix-grid-gap: .8rem;--studio-mix-card-width: 20rem;gap:1rem;overflow:visible;position:relative;container-type:inline-size}.workspace-studio-live-mix-header{display:flex;flex-direction:column;gap:.15rem}.workspace-studio-live-mix-header h2{margin:0}.workspace-studio-panel-genre{width:100%}.workspace-studio-live-mix-rows{display:grid;gap:var(--studio-mix-grid-gap)}.workspace-instrument-state{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.3rem .6rem;font-size:.74rem;font-weight:700;border:1px solid var(--border-color);background:var(--input-bg);color:var(--text-muted);white-space:nowrap}.workspace-instrument-state--on{border-color:color-mix(in srgb,var(--green),transparent 40%);background:color-mix(in srgb,var(--green),transparent 88%);color:var(--green)}.workspace-instrument-state--queued{border-color:color-mix(in srgb,var(--yellow),transparent 40%);background:color-mix(in srgb,var(--yellow),transparent 88%);color:var(--yellow)}.workspace-instrument-state--off{border-color:var(--border-color);background:var(--input-bg);color:var(--text-muted)}.workspace-studio-active-count{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.38rem .75rem;font-size:.75rem;font-weight:700;border:1px solid var(--border-color);background:var(--input-bg);color:var(--text-muted)}.workspace-studio-mix-row{--studio-row-accent: var(--accent-color);position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 1rem;border-radius:16px;border:1px solid color-mix(in srgb,var(--studio-row-accent),transparent 70%);background:color-mix(in srgb,var(--panel-color),var(--studio-row-accent) 3%);box-shadow:var(--shadow-sm);overflow:visible;transition:transform var(--anim-fast) var(--anim-ease),border-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease)}@container (min-width: 41rem){.workspace-studio-live-mix-rows{width:min(100%,calc((2 * var(--studio-mix-card-width)) + var(--studio-mix-grid-gap)));margin-inline:auto;grid-template-columns:repeat(2,minmax(0,var(--studio-mix-card-width)));align-items:stretch;justify-content:center}.workspace-studio-mix-row{min-height:0;gap:.75rem;padding:.82rem .88rem}.workspace-studio-mix-row-main{gap:.75rem}.workspace-studio-mix-row-icon{width:2.3rem;height:2.3rem;border-radius:12px;font-size:1rem}.workspace-studio-mix-row-copy h3{font-size:.94rem}.workspace-studio-mix-row-actions{gap:.35rem}.workspace-studio-live-mix .workspace-studio-mix-menu-trigger,.workspace-studio-live-mix .power-btn{height:32px;width:32px;padding:0}}.workspace-studio-mix-row.is-active{box-shadow:var(--shadow-sm),0 0 0 1px color-mix(in srgb,var(--studio-row-accent),transparent 72%)}.workspace-studio-mix-row:not(.is-active):not(.is-menu-open){border-color:var(--border-color);background:color-mix(in srgb,var(--panel-color),transparent 10%)}.workspace-studio-mix-row:not(.is-active):not(.is-menu-open) .workspace-studio-mix-row-icon{opacity:.5;filter:grayscale(.6)}.workspace-studio-mix-row:not(.is-active):not(.is-menu-open) .workspace-studio-mix-row-copy h3{color:var(--text-muted)}.workspace-studio-mix-row.is-menu-open{z-index:calc(var(--z-panel-header) + 2);border-color:color-mix(in srgb,var(--studio-row-accent),transparent 30%);box-shadow:var(--shadow-md),0 0 0 1px color-mix(in srgb,var(--studio-row-accent),transparent 72%);transform:translateY(-1px)}.workspace-studio-mix-row:hover{transform:translateY(-1px)}.workspace-studio-mix-row--groove{--studio-row-accent: var(--yellow)}.workspace-studio-mix-row--bass{--studio-row-accent: var(--success-color)}.workspace-studio-mix-row--chords{--studio-row-accent: var(--accent-color)}.workspace-studio-mix-row--harmony{--studio-row-accent: var(--harmony-color)}.workspace-studio-mix-row--soloist{--studio-row-accent: var(--soloist-color)}.workspace-studio-mix-row-main{min-width:0;flex:1 1 auto;display:flex;align-items:center;gap:.9rem}.workspace-studio-mix-row-icon{display:inline-flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;flex-shrink:0;border-radius:14px;border:1px solid color-mix(in srgb,var(--studio-row-accent),transparent 65%);background:color-mix(in srgb,var(--studio-row-accent),transparent 88%);box-shadow:inset 0 1px #ffffff0d;font-size:1.05rem}.workspace-studio-mix-row-copy{min-width:0;display:flex;align-items:center}.workspace-studio-mix-row-copy h3{margin:0;font-size:.98rem;color:var(--studio-row-accent)}.workspace-studio-mix-row-actions{display:flex;align-items:center;gap:.45rem;flex-shrink:0}.workspace-studio-mix-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:50%;font-size:.9rem;color:var(--text-muted)}.workspace-studio-mix-menu-trigger:hover{color:var(--studio-row-accent);border-color:color-mix(in srgb,var(--studio-row-accent),transparent 55%);background:color-mix(in srgb,var(--studio-row-accent),transparent 92%)}.workspace-studio-mix-menu-trigger.is-open{color:var(--studio-row-accent);border-color:color-mix(in srgb,var(--studio-row-accent),transparent 35%);background:color-mix(in srgb,var(--studio-row-accent),transparent 90%)}.workspace-studio-surface-root{position:relative}.workspace-studio-mixer-accordion{border-top:1px solid var(--border-color);margin-top:.25rem}.workspace-studio-mixer-accordion-trigger{width:100%;display:flex;align-items:center;gap:.5rem;padding:.7rem .25rem;background:none;border:none;color:var(--text-color);cursor:pointer;font-size:.82rem;font-weight:700;text-align:left}.workspace-studio-mixer-accordion-trigger:hover{color:var(--text-color);background:none}.workspace-studio-mixer-accordion-trigger .workspace-studio-active-count{margin-left:auto;padding:.15rem .55rem;font-size:.72rem}.workspace-studio-mixer-accordion-caret{font-size:.9rem;color:var(--text-muted);transition:transform .16s ease}.workspace-studio-mixer-accordion.is-open .workspace-studio-mixer-accordion-caret{transform:rotate(180deg)}.workspace-studio-mixer-accordion-body{padding-bottom:.5rem}.workspace-studio-genre-button{display:flex;align-items:center;width:100%;gap:.6rem;border-radius:12px;padding:.7rem 1rem;border:1px solid color-mix(in srgb,var(--accent-color),transparent 55%);background:color-mix(in srgb,var(--accent-color),transparent 92%);box-shadow:var(--shadow-sm);transition:transform var(--anim-fast) var(--anim-ease),border-color var(--anim-fast) var(--anim-ease),box-shadow var(--anim-fast) var(--anim-ease)}.workspace-studio-genre-button:hover{border-color:color-mix(in srgb,var(--accent-color),transparent 35%);transform:translateY(-1px)}.workspace-studio-genre-button:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px;border-color:color-mix(in srgb,var(--accent-color),transparent 35%)}.workspace-studio-genre-button.is-open{border-color:color-mix(in srgb,var(--accent-color),transparent 32%);background:color-mix(in srgb,var(--accent-color),transparent 88%);box-shadow:var(--shadow-md)}.workspace-studio-genre-button-label{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.workspace-studio-genre-button-value{font-size:.9rem;font-weight:700;color:var(--accent-color);white-space:nowrap}.workspace-studio-genre-button-caret{font-size:.95rem;line-height:1;color:var(--accent-color)}.workspace-studio-genre-button-right{display:flex;align-items:center;gap:.35rem;margin-left:auto}.workspace-studio-surface-backdrop{position:fixed;inset:0;border:none;padding:0;background:#02061775;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:calc(var(--z-modal) - 1)}.workspace-studio-surface-layer{position:fixed;inset:0;z-index:var(--z-modal);isolation:isolate;pointer-events:none}.workspace-studio-surface{--studio-surface-accent: var(--accent-color);position:fixed;padding:.8rem;display:flex;flex-direction:column;gap:.65rem;border-radius:20px;border:1px solid color-mix(in srgb,var(--studio-surface-accent),transparent 72%);background:var(--panel-color);box-shadow:0 22px 60px #02061747,0 0 0 1px color-mix(in srgb,var(--studio-surface-accent),transparent 88%);z-index:var(--z-modal);overflow:hidden;pointer-events:auto}.workspace-studio-surface--modal{top:50%;left:50%;width:min(94vw,32rem);max-height:min(80dvh,42rem);transform:translate(-50%,-50%);animation:workspaceStudioSurfaceModalIn .18s ease-out}.workspace-studio-surface--anchored{transform-origin:top right;animation:workspaceStudioSurfaceAnchorIn .18s ease-out}.workspace-studio-surface--groove{--studio-surface-accent: var(--yellow)}.workspace-studio-surface--bass{--studio-surface-accent: var(--success-color)}.workspace-studio-surface--chords{--studio-surface-accent: var(--accent-color)}.workspace-studio-surface--harmony{--studio-surface-accent: var(--harmony-color)}.workspace-studio-surface--soloist{--studio-surface-accent: var(--soloist-color)}.workspace-studio-surface--mixer{--studio-surface-accent: var(--cyan)}.workspace-studio-surface-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;min-width:0;position:relative;z-index:1}.workspace-studio-surface-header-copy{min-width:0;display:flex;flex-direction:column;gap:.2rem}.workspace-studio-surface-header h3{margin:0;color:var(--text-color)}.workspace-studio-surface-summary{margin:0;font-size:.82rem;color:var(--text-muted);line-height:1.4}.workspace-studio-surface-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.15rem}.workspace-studio-surface-body{min-height:0;flex:1 1 auto;width:100%;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scroll-padding-block-end:1rem;display:flex;flex-direction:column;gap:.65rem;padding-right:.1rem;scrollbar-gutter:stable}.workspace-studio-surface--mixer-panel .workspace-studio-surface-body{gap:.45rem}.workspace-studio-surface-close{width:32px;height:32px;flex-shrink:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background:var(--input-bg);font-size:1.15rem;line-height:1;box-shadow:var(--shadow-sm);color:var(--text-color);position:relative;z-index:2}.workspace-studio-surface-close:hover{background:var(--card-bg-hover);border-color:color-mix(in srgb,var(--studio-surface-accent),transparent 55%)}.workspace-studio-surface-close:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px;border-color:color-mix(in srgb,var(--studio-surface-accent),transparent 45%)}.workspace-studio-genre-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.workspace-studio-genre-option{width:100%;min-height:44px;padding:.65rem .8rem;border-radius:12px;display:inline-flex;align-items:center;justify-content:space-between;gap:.5rem;text-align:left;font-weight:700;background:var(--card-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.workspace-studio-genre-option:hover,.workspace-studio-genre-option:focus-visible{border-color:color-mix(in srgb,var(--accent-color),transparent 35%);transform:translateY(-1px)}.workspace-studio-genre-option.active{background:color-mix(in srgb,var(--accent-color),transparent 85%);border-color:color-mix(in srgb,var(--accent-color),transparent 35%);color:var(--accent-color)}.workspace-studio-genre-option-mark{font-size:.82rem}.workspace-studio-mixer-grid{display:flex;flex-direction:column;gap:.45rem}.workspace-studio-mixer-strip{--studio-row-accent: var(--accent-color);display:grid;grid-template-columns:minmax(0,6rem) minmax(0,1fr);gap:.6rem;align-items:center;padding:.58rem .65rem;border-radius:14px;border:1px solid color-mix(in srgb,var(--studio-row-accent),transparent 72%);background:color-mix(in srgb,var(--panel-color),var(--studio-row-accent) 3%);box-shadow:var(--shadow-sm)}.workspace-studio-mixer-strip--groove{--studio-row-accent: var(--yellow)}.workspace-studio-mixer-strip--bass{--studio-row-accent: var(--success-color)}.workspace-studio-mixer-strip--chords{--studio-row-accent: var(--accent-color)}.workspace-studio-mixer-strip--harmony{--studio-row-accent: var(--harmony-color)}.workspace-studio-mixer-strip--soloist{--studio-row-accent: var(--soloist-color)}.workspace-studio-mixer-strip-heading{min-width:0;display:flex;align-items:center;gap:.45rem}.workspace-studio-mixer-strip-heading h4{margin:0;font-size:.88rem;color:var(--studio-row-accent)}.workspace-studio-mixer-strip-icon{display:inline-flex;align-items:center;justify-content:center;width:1.85rem;height:1.85rem;flex-shrink:0;border-radius:10px;border:1px solid color-mix(in srgb,var(--studio-row-accent),transparent 65%);background:color-mix(in srgb,var(--studio-row-accent),transparent 88%);font-size:.9rem}.workspace-studio-mixer-strip-controls{min-width:0;display:grid;gap:.3rem}.workspace-studio-mixer-strip-slider{min-width:0;display:grid;grid-template-columns:1.5rem minmax(0,1fr) 2.1rem;gap:.4rem;align-items:center}.workspace-studio-mixer-strip-slider-label{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.workspace-studio-mixer-strip-slider-value{min-width:0;text-align:right;font-size:.72rem;font-weight:700;color:var(--text-muted)}.workspace-studio-mixer-accordion-body .workspace-studio-mixer-strip input[type=range]{width:100%;min-width:0;max-width:100%}.workspace-studio-surface--settings .grid-2-col{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.65rem;align-items:start}.workspace-studio-surface--settings .setting-group,.workspace-studio-surface--band-feel .setting-group,.workspace-studio-surface-card{margin:0;padding:.72rem;border:1px solid color-mix(in srgb,var(--studio-surface-accent),transparent 78%);border-radius:16px;background:var(--card-bg);box-shadow:var(--shadow-sm)}.workspace-studio-surface--settings .grid-2-col>.setting-group:last-child,.workspace-studio-surface--band-feel .setting-group:last-child{margin:0;padding:.72rem;border-radius:16px;border-top:1px solid color-mix(in srgb,var(--studio-surface-accent),transparent 78%);background:var(--input-bg)}.workspace-studio-surface--settings .setting-group-title,.workspace-studio-surface--band-feel .setting-group-title{font-size:.68rem;margin-bottom:.45rem;padding-bottom:.26rem;letter-spacing:.1em;color:var(--text-muted);opacity:1;border-bottom:1px solid color-mix(in srgb,var(--studio-surface-accent),transparent 82%)}.workspace-studio-surface--settings .setting-row,.workspace-studio-surface--band-feel .setting-row{margin-bottom:.3rem;min-height:0;gap:.38rem;align-items:flex-start}.workspace-studio-surface--settings .setting-label{font-size:.74rem}.workspace-studio-surface--settings .setting-info,.workspace-studio-surface--band-feel .setting-info{min-width:0;width:100%}.workspace-studio-surface--settings .setting-control,.workspace-studio-surface--band-feel .setting-control{min-width:0;flex:1 1 auto;width:100%;justify-content:flex-start;flex-wrap:wrap}.workspace-studio-surface--settings .setting-value-display,.workspace-studio-surface--band-feel .setting-value-display{font-size:.72rem;min-width:2.2rem}.workspace-studio-surface--settings input[type=range],.workspace-studio-surface--band-feel input[type=range]{width:100%;min-width:8rem;flex:1 1 10rem}.workspace-studio-surface--settings select{padding:.2rem .4rem;font-size:.76rem;height:30px}.workspace-studio-surface--settings .setting-control>select,.workspace-studio-surface--band-feel .setting-control>select{width:100%;min-width:0;flex:1 1 10rem}.workspace-studio-surface--settings .divider-top{margin-top:.5rem;padding-top:.5rem}.workspace-studio-surface--settings .instrument-settings-swing-controls{width:100%;margin-left:0;justify-content:flex-start;flex-wrap:wrap}.workspace-studio-surface--settings .instrument-settings-swing-controls input[type=range]{flex:1 1 9rem}.workspace-studio-surface--settings .instrument-settings-swing-controls>select{flex:0 1 5rem}.workspace-studio-surface--settings .smart-tab-layout{padding:0;gap:.55rem}.workspace-studio-surface--settings .flex-between{align-items:flex-start;gap:.75rem;flex-wrap:wrap}.workspace-studio-surface--settings .button-group{width:100%;min-width:0;flex-wrap:wrap;justify-content:flex-start}.workspace-studio-surface--settings .button-group-btn{min-width:0;max-width:100%;border-radius:999px;padding:.28rem .62rem}.workspace-studio-surface-card--soloist{width:100%}.workspace-studio-surface--settings .smart-tab-label.panel-title{margin:0;font-size:.7rem;letter-spacing:.08em}@keyframes workspaceStudioSurfaceModalIn{0%{opacity:0;transform:translate(-50%,calc(-50% + 12px)) scale(.985)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes workspaceStudioSurfaceAnchorIn{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.workspace-studio-mix-row,.workspace-studio-genre-button{animation:none;transition:none}}@media(max-width:380px){h1{font-size:1rem}}@media(max-width:340px){.key-controls{grid-template-columns:32px 1fr 1fr 34px 26px 26px;gap:.15rem}.header-btn{font-size:.75rem}}@media(max-width:900px){input[type=range]{height:24px}.panel-header-controls{gap:.25rem}}@media(max-width:1100px)and (pointer:coarse){main.app-main-layout.workspace-shell{display:flex;flex-direction:column;gap:.75rem;padding:.5rem .5rem calc(92px + env(safe-area-inset-bottom));min-height:100dvh;align-items:stretch}main.app-main-layout.workspace-shell .workspace-content{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;width:100%;max-width:none;align-self:stretch}.workspace-nav{position:fixed;left:.5rem;right:.5rem;bottom:calc(.5rem + env(safe-area-inset-bottom));top:auto;z-index:var(--z-mobile-nav);padding:.6rem;border-radius:18px;box-shadow:var(--shadow-lg)}.workspace-nav-header{display:none}.workspace-nav-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem}.workspace-nav-btn{flex-direction:column;justify-content:center;align-items:center;padding:.55rem .2rem;min-height:60px;gap:.25rem;text-align:center}.workspace-nav-icon{font-size:1rem}.workspace-nav-label{font-size:.72rem;line-height:1.1}.workspace-view--arranger,.workspace-arranger-layout,.workspace-arranger-main,.workspace-arranger-chords{min-height:0;width:100%;max-width:none}.workspace-arranger-layout{height:calc(100dvh - 156px - 1rem);overflow:visible}.workspace-arranger-main{overflow:visible;gap:.6rem}.workspace-arranger-chords{flex:1;overflow:hidden}.workspace-arranger-chords .display-area{height:100%;max-height:none;overflow-x:hidden;overflow-y:auto}}@media(min-width:900px){.app-main-layout{display:grid;grid-template-columns:1fr 28rem;grid-template-rows:auto auto 1fr;grid-template-areas:"arranger sidebar" "visualizer sidebar" "empty sidebar";gap:1rem;align-items:stretch;max-width:1800px;padding:1.5rem}#panel-arranger{grid-area:arranger}#panel-visualizer{grid-area:visualizer}.dashboard-panel{padding:1.25rem}}@media(min-width:1600px){.app-main-layout{grid-template-columns:1fr 32rem}}@media(max-width:700px){.workspace-view--arranger .workspace-arranger-layout{display:flex;flex-direction:column;height:calc(100dvh - 156px - .35rem);overflow:hidden}.workspace-view--arranger .workspace-arranger-main{flex:1 1 auto;gap:.22rem}.workspace-view--arranger #panel-arranger{flex:1 1 auto;padding:.54rem .54rem .5rem}.workspace-view--arranger #panel-arranger .panel-header{flex-direction:column;align-items:stretch;gap:.26rem;padding-bottom:.18rem}.workspace-view--arranger #panel-arranger .panel-header>div{width:100%}.workspace-view--arranger #panel-arranger .workspace-kicker,.workspace-view--arranger #panel-arranger .workspace-arranger-header-title{display:none}.workspace-view--arranger #panel-arranger .panel-header-controls{width:100%;justify-content:stretch;gap:.35rem}.workspace-view--arranger #panel-arranger .workspace-arranger-controls-panel{margin-top:.12rem;padding:.24rem .28rem}.workspace-view--arranger .workspace-arranger-controls-panel{gap:.34rem;align-items:flex-start}.workspace-view--arranger .workspace-arranger-controls-main,.workspace-view--arranger .workspace-arranger-controls-actions{width:100%}.workspace-view--arranger .workspace-arranger-controls-actions{justify-content:flex-start;gap:.24rem;margin-left:0}.workspace-view--arranger .workspace-arranger-toolbar-cluster{width:100%;min-width:0}.workspace-view--arranger .workspace-arranger-controls-actions .header-btn,.workspace-view--arranger .workspace-arranger-controls-actions .workspace-toolbar-popover{width:auto;min-width:0}.workspace-view--arranger .workspace-arranger-controls-actions .header-btn,.workspace-view--arranger .workspace-arranger-controls-actions .workspace-toolbar-trigger{height:32px;gap:.2rem}.workspace-view--arranger .workspace-arranger-action-btn{padding-inline:.28rem}.workspace-view--arranger .workspace-arranger-action-btn--primary,.workspace-view--arranger .workspace-arranger-action-btn--edit,.workspace-view--arranger #shareHubBtn{padding-inline:.58rem}.workspace-view--arranger .workspace-arranger-toolbar-trigger--key{justify-content:space-between;min-width:min(10.75rem,100%)}.workspace-view--arranger .workspace-toolbar-trigger-copy{gap:.28rem}.workspace-view--arranger .workspace-toolbar-trigger-label,.workspace-view--arranger .workspace-toolbar-trigger-value{font-size:.78rem}.workspace-toolbar-panel{gap:.65rem;padding:.7rem;border-radius:12px}.workspace-toolbar-panel--seed .workspace-seed-row{justify-content:flex-start}.workspace-toolbar-panel--seed .seed-input{flex:1 1 6rem;width:min(100%,7rem)}.workspace-view--arranger .workspace-arranger-controls-panel .key-controls{justify-content:flex-start;gap:.2rem}.workspace-toolbar-panel__button{min-height:32px}.workspace-view--arranger .workspace-arranger-chords{flex:1 1 auto;min-height:0;overflow:hidden}.workspace-view--arranger .workspace-arranger-chords .display-area{height:100%;max-height:none;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-margin-block:12vh}.workspace-view--studio{gap:.75rem}.workspace-view--studio,.workspace-view--studio .workspace-columns,.workspace-view--studio .workspace-stack{width:100%}.workspace-view--studio .workspace-columns{gap:.6rem}.workspace-view--studio .workspace-studio-live-mix{gap:.75rem;padding:.9rem}.workspace-view--studio .workspace-studio-live-mix-header{flex-direction:column;align-items:stretch;gap:.55rem}.workspace-view--studio .workspace-studio-live-mix-header h2{font-size:.98rem}.workspace-view--studio .workspace-studio-live-mix-tools{width:100%;margin-left:0;justify-content:space-between;gap:.5rem}.workspace-view--studio .workspace-studio-mixer-button{align-self:flex-start}.workspace-view--studio .workspace-studio-mixer-button,.workspace-view--studio .workspace-studio-genre-button{width:auto;max-width:100%;justify-content:space-between;padding-inline:.7rem}.workspace-view--studio .workspace-studio-live-mix-rows{gap:.6rem}.workspace-view--studio .workspace-studio-mix-row{gap:.75rem;padding:.8rem}.workspace-view--studio .workspace-studio-mix-row-main{gap:.75rem}.workspace-view--studio .workspace-studio-mix-row-icon{width:2.3rem;height:2.3rem;border-radius:12px}.workspace-view--studio .workspace-studio-mix-row-heading{gap:.4rem}.workspace-view--studio .workspace-studio-mix-row-heading h3{font-size:.92rem}.workspace-view--studio .workspace-studio-mix-row-copy p{font-size:.78rem}.workspace-view--studio .workspace-instrument-state{padding:.24rem .45rem;font-size:.68rem}.workspace-view--studio .workspace-studio-mix-row-actions{gap:.35rem}.workspace-view--studio .workspace-studio-mixer-button,.workspace-view--studio .workspace-studio-mix-menu-trigger,.workspace-view--studio .power-btn{height:30px;font-size:.95rem}.workspace-view--studio .workspace-studio-mixer-button,.workspace-view--studio .workspace-studio-mix-menu-trigger{width:auto;padding:0 .65rem 0 .72rem}.workspace-studio-surface--modal{top:max(.75rem,calc(env(safe-area-inset-top) + .5rem));left:.75rem;right:.75rem;bottom:max(.75rem,calc(env(safe-area-inset-bottom) + .5rem));width:auto;min-height:0;max-height:none;padding:.82rem;padding-bottom:calc(.82rem + env(safe-area-inset-bottom));transform:none;animation:workspaceStudioSurfaceMobileIn .18s ease-out}.workspace-studio-surface-body{min-height:0;gap:.55rem;padding-bottom:calc(1.3rem + env(safe-area-inset-bottom));scroll-padding-block-end:calc(1.3rem + env(safe-area-inset-bottom))}.workspace-studio-surface--settings .workspace-studio-surface-header{gap:.55rem}.workspace-studio-surface--settings .workspace-studio-surface-summary{display:none}.workspace-studio-mixer-grid{gap:.45rem}.workspace-studio-mixer-strip{grid-template-columns:minmax(0,5.4rem) minmax(0,1fr);gap:.55rem;padding:.55rem .6rem;border-radius:14px}.workspace-studio-mixer-strip-icon{width:1.75rem;height:1.75rem;border-radius:10px;font-size:.88rem}.workspace-studio-mixer-strip-heading h4{font-size:.84rem}.workspace-studio-mixer-strip-slider{grid-template-columns:1.35rem minmax(0,1fr) 1.95rem;gap:.35rem}.workspace-studio-mixer-strip-slider-label,.workspace-studio-mixer-strip-slider-value{font-size:.66rem}.workspace-studio-genre-grid{gap:.5rem}.workspace-studio-surface--settings .grid-2-col{grid-template-columns:1fr;gap:.55rem}.workspace-studio-surface--settings .setting-group,.workspace-studio-surface--band-feel .setting-group,.workspace-studio-surface-card{padding:.62rem;border-radius:16px}.workspace-studio-surface-card--soloist{padding-bottom:1.75rem}.workspace-studio-surface--settings .setting-group-title,.workspace-studio-surface--band-feel .setting-group-title{margin-bottom:.35rem;padding-bottom:.24rem;font-size:.72rem}.workspace-studio-surface--settings .setting-row,.workspace-studio-surface--band-feel .setting-row{gap:.5rem;margin-bottom:.32rem;min-height:1.65rem}.workspace-studio-surface--settings .setting-description,.workspace-studio-surface--band-feel .setting-description{display:none}.workspace-studio-surface--settings .setting-info,.workspace-studio-surface--band-feel .setting-info{min-width:0}.workspace-studio-surface--settings .setting-control,.workspace-studio-surface--band-feel .setting-control{gap:.4rem}.workspace-studio-surface--settings .setting-control>select,.workspace-studio-surface--band-feel .setting-control>select,.workspace-studio-surface--settings .setting-control input[type=range],.workspace-studio-surface--band-feel .setting-control input[type=range]{width:clamp(92px,36vw,156px)}.workspace-view--studio .workspace-studio-mix-menu-label{font-size:.72rem}}@keyframes workspaceStudioSurfaceMobileIn{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes workspaceStudioSurfaceMobileFadeIn{0%{opacity:0}to{opacity:1}}@supports (-webkit-touch-callout: none){@media(max-width:700px){.workspace-studio-surface-backdrop{backdrop-filter:none;-webkit-backdrop-filter:none;background:#0206179e}.workspace-studio-surface--modal{animation:workspaceStudioSurfaceMobileFadeIn .16s ease-out}.workspace-studio-surface,.workspace-studio-surface-header,.workspace-studio-surface-header-copy,.workspace-studio-surface-close{transform:translateZ(0);backface-visibility:hidden;-webkit-font-smoothing:antialiased}}}
/*# sourceMappingURL=styles.a2a1531c.css.map */
