:root{color-scheme:dark;--ink:#f5f1e8;--muted:#a9b3b6;--faint:#738084;--panel:rgba(13,17,22,.86);--panel-strong:rgba(20,25,31,.94);--line:rgba(225,232,222,.14);--line-strong:rgba(225,232,222,.24);--teal:#25d4c4;--amber:#f1a33f;--magenta:#d94fba;--green:#b5ee72;--danger:#ff776d;--shadow:0 24px 80px rgba(0,0,0,.44)}*{box-sizing:border-box}body,html{min-height:100%;margin:0}body{background:#07090c;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}button,input,select{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.app-frame{position:relative;min-height:100vh;overflow:hidden;padding:28px}.studio-backdrop{position:fixed;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(4,6,8,.96),rgba(4,6,8,.82) 42%,rgba(4,6,8,.6)),linear-gradient(180deg,rgba(4,6,8,.2),rgba(4,6,8,.94)),url(/studio-workstation.png) 50% /cover no-repeat}.studio-backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(hsla(0,0%,100%,.018) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.014) 1px,transparent 0);background-size:40px 40px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.72),transparent 80%);mask-image:linear-gradient(180deg,rgba(0,0,0,.72),transparent 80%)}.app-grid{display:grid;grid-template-columns:minmax(320px,410px) minmax(0,1fr);grid-gap:22px;gap:22px;width:min(1480px,100%);margin:0 auto;align-items:start}.left-rail,.main-workspace{display:grid;grid-gap:16px;gap:16px;min-width:0}.surface{border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.empty-workspace,.import-panel,.player-shell,.progress-panel{padding:20px}.export-bar,.panel-heading,.player-header,.status-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-heading{align-items:flex-start}.eyebrow{margin:0 0 6px;color:var(--teal);font-size:.75rem;font-weight:700;letter-spacing:0;text-transform:uppercase}h1,h2{margin:0;color:var(--ink);font-weight:750;line-height:1.08}h1{max-width:11ch;font-size:2.65rem}h2{font-size:1.35rem}.mode-switch,.source-tabs{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:hsla(0,0%,100%,.05)}.mode-switch button,.source-tabs button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;border:0;border-radius:6px;padding:0 10px;color:var(--muted);background:transparent;cursor:pointer}.mode-switch button.active,.source-tabs button.active{color:#07100f;background:var(--teal)}.source-tabs{width:100%;margin-top:24px}.source-tabs button{flex:1 1;gap:8px}.import-form{display:grid;grid-gap:14px;gap:14px;margin-top:14px}.drop-target{display:grid;place-items:center;grid-gap:10px;gap:10px;min-height:164px;width:100%;border:1px dashed rgba(37,212,196,.55);border-radius:8px;padding:20px;color:var(--ink);background:rgba(37,212,196,.08);cursor:pointer}.drop-target input{display:none}.drop-target span{max-width:100%;overflow-wrap:anywhere;color:var(--muted);font-weight:700;text-align:center}.url-fields{display:grid;grid-gap:12px;gap:12px}label{display:grid;grid-gap:7px;gap:7px;color:var(--muted);font-size:.86rem;font-weight:650}input,select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:rgba(0,0,0,.32);outline:none}input:not([type]),input[type=url],select{padding:0 12px}input:focus,select:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(37,212,196,.16)}.download-link,.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:0;border-radius:7px;padding:0 14px;color:#06100f;background:var(--teal);font-weight:800;cursor:pointer}.primary-button:disabled{cursor:not-allowed;opacity:.58}.form-error{margin:0;color:var(--danger);font-size:.9rem;overflow-wrap:anywhere}.progress-panel{background:var(--panel-strong)}.status-row strong{font-size:1.5rem}.status-icon{display:grid;flex:0 0 auto;place-items:center;width:42px;height:42px;border-radius:8px;color:var(--amber);background:rgba(241,163,63,.12)}.status-icon svg{animation:spin 1.1s linear infinite}.status-icon.complete{color:var(--green);background:hsla(88,78%,69%,.12)}.status-icon.complete svg,.status-icon.failed svg{animation:none}.status-icon.failed{color:var(--danger);background:hsla(4,100%,71%,.12)}.progress-track{height:9px;margin-top:18px;overflow:hidden;border-radius:999px;background:hsla(0,0%,100%,.08)}.progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--amber),var(--magenta));transition:width .26s ease}.status-copy{margin:12px 0 0;color:var(--muted);line-height:1.45}.empty-workspace{min-height:420px;display:grid;align-content:end}.empty-workspace h2{max-width:24ch;font-size:2rem}.player-shell{background:rgba(12,15,19,.9)}.transport{display:flex;align-items:center;gap:8px}.icon-button,.transport-button{display:inline-grid;flex:0 0 auto;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:hsla(0,0%,100%,.06);cursor:pointer}.transport-button{width:46px;height:46px;border:0;color:#06100f;background:var(--teal)}.icon-button:disabled,.transport-button:disabled{cursor:not-allowed;opacity:.45}.icon-button.active{color:#0a0b0c;background:var(--amber)}.icon-button.solo.active{background:var(--magenta)}.timeline{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;grid-gap:10px;gap:10px;align-items:center;margin-top:18px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}input[type=range]{min-height:28px;padding:0;accent-color:var(--stem-color,var(--teal));background:transparent}.loading-row{display:inline-flex;align-items:center;gap:8px;margin-top:12px;color:var(--muted)}.stem-list{display:grid;grid-gap:8px;gap:8px;margin-top:18px}.stem-row{grid-template-columns:minmax(150px,190px) minmax(170px,1fr) minmax(330px,380px);grid-gap:14px;gap:14px;min-height:78px;border:1px solid hsla(0,0%,100%,.08);border-radius:8px;padding:12px;background:hsla(0,0%,100%,.045)}.stem-name,.stem-row{display:grid;align-items:center}.stem-name{grid-template-columns:11px minmax(0,1fr);grid-gap:10px;gap:10px;min-width:0}.stem-name small,.stem-name strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stem-name small{margin-top:4px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stem-swatch{width:11px;height:42px;border-radius:999px;background:var(--stem-color);box-shadow:0 0 22px color-mix(in srgb,var(--stem-color) 46%,transparent)}.waveform{position:relative;height:50px;min-width:0;overflow:hidden;border-radius:7px;background:rgba(0,0,0,.26)}.waveform-bars{position:absolute;inset:7px 8px;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-gap:2px;gap:2px;align-items:center}.waveform-bars span{display:block;min-height:4px;border-radius:999px;background:color-mix(in srgb,var(--stem-color) 78%,#fff 8%);opacity:.78}.waveform-playhead{position:absolute;inset:0 auto 0 0;border-right:2px solid var(--ink);background:color-mix(in srgb,var(--stem-color) 16%,transparent);pointer-events:none}.stem-controls{display:grid;grid-template-columns:38px 38px minmax(120px,1fr) 38px;grid-gap:8px;gap:8px;align-items:center}.export-bar{justify-content:flex-start;flex-wrap:wrap;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.export-format{display:inline-grid;grid-template-columns:18px 88px;gap:8px;align-items:center;color:var(--muted)}.download-link{color:var(--ink);background:hsla(0,0%,100%,.1);border:1px solid var(--line)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:1120px){.app-frame{overflow:auto}.app-grid{grid-template-columns:1fr}h1{max-width:none}}@media (max-width:760px){.app-frame{padding:12px}.empty-workspace,.import-panel,.player-shell,.progress-panel{padding:14px}.panel-heading,.player-header,.status-row{align-items:flex-start;flex-direction:column}h1{font-size:2.2rem}.stem-row{grid-template-columns:1fr}.stem-controls{grid-template-columns:38px 38px minmax(110px,1fr) 38px}.timeline{grid-template-columns:44px minmax(0,1fr) 44px;font-size:.85rem}}