:root{color-scheme:dark;--bg:#0b1018;--panel:#121a25;--inset:#101720;--line:#293544;--text:#f5f8fb;--muted:#a0b0c1;--accent:#9ee7b8;--accentText:#092318;--blue:#93bfff;--grid:rgba(198,222,238,.07)}[data-theme=light]{color-scheme:light;--bg:#f1f4f7;--panel:#fff;--inset:#e8eef3;--line:#cbd5df;--text:#172332;--muted:#465668;--accent:#1b7956;--accentText:#fff;--blue:#2766af;--grid:rgba(0,33,66,.09)}*{box-sizing:border-box}html{font-family:system-ui,-apple-system,"Segoe UI",sans-serif}body{margin:0;background:var(--bg);color:var(--text);line-height:1.5}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}input,select{color:var(--text)}.skip{position:absolute;top:-100px;left:1rem;background:var(--accent);color:var(--accentText);padding:.6rem;z-index:10}.skip:focus{top:1rem}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.app-shell{max-width:1600px;margin:auto;padding:0 32px}.bar{height:76px;display:flex;align-items:center;gap:34px;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:800;letter-spacing:.14em}.wordmark small{display:block;font-size:10px;color:var(--muted);letter-spacing:.24em}.mark{color:var(--accent);font-size:30px}.bar-nav{display:flex;gap:14px;color:var(--muted);font-size:13px}.bar-nav span:last-child{color:var(--text)}.slash{opacity:.45}.bar-right{margin-left:auto;display:flex;align-items:center;gap:16px}.local-pill{font-size:10px;letter-spacing:.1em;font-weight:800;color:var(--accent);display:flex;align-items:center;gap:9px}.local-pill i{width:7px;height:7px;background:var(--accent);border-radius:50%}.icon-btn{width:35px;height:35px;border:1px solid var(--line);background:transparent;color:var(--text);border-radius:8px}.intro{padding:36px 0 25px;display:flex;align-items:end;justify-content:space-between;gap:24px}.intro h1{font-size:clamp(36px,4vw,58px);line-height:1.04;font-weight:750;letter-spacing:-.055em;margin:8px 0}.intro p{color:var(--muted);margin:10px 0 0;max-width:610px}.overline,.quiet-label{font-size:10px;font-weight:800;letter-spacing:.17em;color:var(--accent)}.intro-actions{display:flex;gap:9px;flex-wrap:wrap}.button,.chip{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:11px 15px;border-radius:9px;font-size:13px;font-weight:750;white-space:nowrap}.button:hover:not(:disabled),.chip:hover:not(:disabled){filter:brightness(1.09);border-color:var(--accent)}.button.primary{background:var(--accent);color:var(--accentText);border-color:var(--accent)}.button.subtle{background:transparent}.button.small{padding:8px 12px}.drop{display:flex;align-items:center;gap:18px;padding:22px;border:1px dashed #556c71;border-radius:12px;background:color-mix(in srgb,var(--accent) 4%,var(--panel));margin-bottom:25px;transition:border-color .18s,background .18s}.drop.dragging{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,var(--panel))}.drop-visual{width:49px;height:49px;border-radius:9px;background:var(--inset);display:grid;place-items:center;font-size:27px;color:var(--accent)}.drop>div:nth-child(2){flex:1}.drop strong,.drop span{display:block}.drop strong{font-size:14px}.drop span{font-size:12px;color:var(--muted);margin-top:3px}.workspace{display:grid;grid-template-columns:minmax(235px,285px) minmax(0,1fr);align-items:start;gap:22px}.library{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:18px;min-height:600px;position:sticky;top:20px}.pane-title,.panel-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.pane-title h2{font-size:15px;letter-spacing:-.02em;margin:0}.count{font-size:12px;color:var(--muted);margin-left:4px}.text-button{border:none;background:none;color:var(--accent);font-size:12px;font-weight:700}.searchbox{display:flex;align-items:center;gap:6px;background:var(--inset);border:1px solid var(--line);border-radius:8px;margin:18px 0 12px;padding:0 10px}.searchbox input{min-width:0;width:100%;border:0;background:transparent;outline:none;padding:10px 4px;font-size:13px}.tracklist{display:grid;gap:6px;max-height:530px;overflow:auto}.library-empty{color:var(--muted);font-size:13px;padding:25px 5px}.track{display:block;text-align:left;border:1px solid transparent;background:transparent;border-radius:8px;padding:12px;width:100%;color:var(--text)}.track:hover{background:var(--inset)}.track.selected{border-color:color-mix(in srgb,var(--accent) 50%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.track-name{font-size:13px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.track-detail{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:10px;margin-top:4px}.library-footnote{font-size:11px;color:var(--muted);margin:18px 0 0}.stage{min-width:0;padding-bottom:30px}.song-head{display:flex;justify-content:space-between;gap:18px;align-items:end;margin:0 0 22px}.song-head h2{font-size:clamp(22px,2.3vw,32px);letter-spacing:-.045em;margin:5px 0;overflow-wrap:anywhere}.song-meta{font-size:12px;color:var(--muted)}.select-mode{font-size:11px;color:var(--muted);display:grid;gap:4px}.select-mode select,.correction-controls select,.correction-controls input,.transport select{background:var(--inset);border:1px solid var(--line);border-radius:7px;padding:8px 9px;font-size:12px;max-width:240px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:15px}.metric{padding:17px 17px 15px;background:var(--panel);border:1px solid var(--line);border-radius:11px;min-width:0}.metric span{font-size:10px;color:var(--muted);font-weight:800;letter-spacing:.1em}.metric strong{display:block;line-height:1.35;font-size:clamp(22px,3vw,35px);letter-spacing:-.055em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric.bpm strong{color:var(--accent)}.metric.key strong{color:var(--blue)}.metric small{display:block;color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel{border:1px solid var(--line);background:var(--panel);border-radius:11px;padding:19px;margin:0 0 15px;min-width:0}.panel h3{font-size:15px;letter-spacing:-.02em;margin:0}.tag{color:var(--muted);border:1px solid var(--line);border-radius:5px;padding:4px 7px;font-size:9px;letter-spacing:.1em;font-weight:800}.toolgroup{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted)}.chip{padding:2px 10px;font-size:18px;line-height:1.3}.panel canvas{display:block;width:100%;background:var(--inset);border-radius:6px;margin:14px 0 0;cursor:crosshair}.transport{display:flex;align-items:center;gap:12px;margin-top:15px}.play{background:var(--accent);color:var(--accentText);border:0;border-radius:8px;width:36px;height:36px}.transport span{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.transport input[type=range]{flex:1;min-width:20px;accent-color:var(--accent)}.transport select{width:77px}.transport .rate-label{font-size:9px;letter-spacing:.1em}.detail-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:15px}.detail-grid .panel{min-width:0}.axis{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.chroma{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:4px;min-height:132px;align-items:end;padding:14px 0}.chroma .note{min-width:0;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:6px}.note .bar-note{width:100%;max-width:20px;height:110px;background:var(--inset);border-radius:3px;display:flex;align-items:end;overflow:hidden}.note .bar-note i{display:block;width:100%;background:var(--accent);min-height:1px}.note small{font-size:10px;color:var(--muted)}.muted{color:var(--muted);font-size:12px}.candidate-box{border-top:1px solid var(--line);padding-top:12px}.candidates{font-size:12px;color:var(--muted);display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.candidate{border:1px solid var(--line);border-radius:6px;padding:5px 7px}.quality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-top:13px}.quality-grid>div{background:var(--panel);padding:13px 15px}.quality-grid span{display:block;color:var(--muted);font-size:11px}.quality-grid strong{font-size:19px;letter-spacing:-.04em}.explainer{color:var(--muted);font-size:11px;line-height:1.6;margin:12px 0 0}.correction-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-top:14px}.correction-controls label{display:grid;gap:5px;font-size:11px;color:var(--muted)}.correction-controls input{width:130px}.message{font-size:12px;color:var(--accent);min-height:1.3em;margin-top:8px}.footer{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid var(--line);padding:25px 0 36px;font-size:11px;color:var(--muted)}.footer a{color:var(--accent)}@media(max-width:1020px){.workspace{grid-template-columns:225px minmax(0,1fr)}.metrics{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}.local-pill{font-size:9px}}@media(max-width:730px){.app-shell{padding:0 15px}.bar{height:62px;gap:12px}.bar-nav{display:none}.local-pill{font-size:0}.local-pill i{width:8px;height:8px}.intro{display:block;padding-top:26px}.intro-actions{margin-top:20px}.drop{padding:13px;flex-wrap:wrap}.drop .button{margin-left:66px}.workspace{grid-template-columns:1fr}.library{min-height:0;position:static}.tracklist{max-height:200px}.song-head{flex-wrap:wrap}.metrics{gap:7px}.metric{padding:12px}.metric strong{font-size:27px}.panel{padding:12px}.quality-grid{grid-template-columns:repeat(2,1fr)}.footer{display:block}.footer span{display:block;margin-bottom:5px}.transport .rate-label{display:none}.correction-controls{gap:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.track-row{position:relative}.track-row .track{padding-right:29px}.remove-track{position:absolute;right:4px;top:9px;background:transparent;border:0;color:var(--muted);font-size:20px;line-height:1;padding:5px;border-radius:5px}.remove-track:hover{color:var(--text);background:var(--inset)}
.chroma:has(.muted){display:block;min-height:132px;padding:20px 2px}.chroma .muted{max-width:32ch;line-height:1.6;margin:0}
