:root{color-scheme:dark;font-family:Arial,Helvetica,system-ui,sans-serif;font-synthesis:none;background:#101214;color:#fff;--muted:#c6cbd1;--line:#505760;--surface:#191d22;--accent:#f5f7fa}*{box-sizing:border-box}body{margin:0}main{max-width:1100px;margin:auto;padding:28px 28px 40px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}h1{font-size:30px;margin:0;font-weight:750}h2{font-size:21px;margin:0}button,input,select{font:inherit}button,select{border:1px solid #7e8996;background:#242a32;color:white;border-radius:6px;min-height:44px;padding:9px 14px;font-size:15px;font-weight:650}button{cursor:pointer}button:hover:enabled{background:#39434e}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #79baff;outline-offset:4px}button.primary{background:#fff;color:#101214;border-color:white;min-width:112px}.test-loader{display:flex;align-items:center;gap:9px}.test-loader label{font-size:13px;color:var(--muted)}.player{border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden}.song-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:23px 24px 17px}.song-row>span{font-size:14px;color:var(--muted)}.timeline-label{display:block;margin:0 24px;font-size:13px;font-weight:650;color:var(--muted)}.timeline{padding:0 22px}.timeline input{width:100%;height:56px;margin:0;cursor:pointer;touch-action:pan-y;accent-color:#fff}.timeline input:disabled{cursor:default}.timeline input::-webkit-slider-runnable-track{height:12px;background:#6b747f;border-radius:6px}.timeline input::-webkit-slider-thumb{appearance:none;width:28px;height:28px;margin-top:-8px;border:2px solid white;border-radius:50%;background:#fff}.timeline input{-webkit-appearance:none;background:transparent;appearance:none}.timeline input::-moz-range-track{height:12px;background:#6b747f;border-radius:6px}.timeline input::-moz-range-thumb{width:26px;height:26px;border:2px solid #fff;border-radius:50%;background:#fff}.transport{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:5px 24px 12px}.time{font-size:25px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.transport-buttons{display:flex;gap:10px}#notice{margin:0;padding:5px 24px 19px;color:var(--muted);font-size:14px;line-height:1.5;min-height:45px}#notice.error{color:#ffbfb3}.channels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}.channel{min-width:0;padding:23px 17px 21px;text-align:center}.channel+.channel{border-left:1px solid var(--line)}.channel h3{font-size:18px;font-weight:750;margin:0 0 11px;min-height:22px}.filename{display:block;color:var(--muted);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px}.file-state{font-size:12px;color:var(--muted);min-height:18px;display:block}.channel-error{color:#ffbfb3;font-size:12px;line-height:1.4;margin:8px 0 0;overflow-wrap:anywhere}.channel-error:empty{display:none}.fader-wrap{height:215px;display:flex;align-items:center;justify-content:center;margin:15px 0}.fader{writing-mode:vertical-lr;direction:rtl;width:46px;height:205px;accent-color:#fff;touch-action:none;cursor:ns-resize}.readout{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums}.db{font-size:13px;color:var(--muted);margin:6px 0 12px;display:block}.ms-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.ms-buttons button{font-size:19px;min-height:48px;border:2px solid #b5c0cd;color:#fff;background:#222933}.ms-buttons button[aria-pressed=true]{background:#fff;color:#101214;border-color:#fff}.file-button{width:100%;font-size:14px}.channel input[type=file]{display:none}.fine{display:flex;justify-content:flex-end;align-items:center;gap:9px;padding:16px 24px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.fine input{width:19px;height:19px;accent-color:#fff}.diagnostics{margin-top:18px;color:var(--muted);font-size:13px}.diagnostics summary{cursor:pointer;padding:12px 0;min-height:44px}.diagnostic-actions{display:flex;gap:10px;margin:10px 0}.diagnostics pre{white-space:pre-wrap;font-size:12px;line-height:1.6;overflow-wrap:anywhere}#checks:not(:empty){padding:15px 0}.check{display:grid;grid-template-columns:18px 190px 1fr;gap:8px;font-size:12px;line-height:1.6;padding:5px 0}.check strong{color:#fff}.pass{color:#b3f3bf}.fail{color:#ffbfb3}
@media(max-width:680px){main{padding:19px 12px 28px}header{display:block;margin-bottom:18px}h1{font-size:27px;margin-bottom:17px}.test-loader{flex-wrap:wrap}.test-loader label{font-size:12px}.test-loader button,.test-loader select{font-size:13px}.song-row{padding:18px 14px;align-items:flex-start}.song-row h2{font-size:18px}.song-row>span{font-size:12px;white-space:nowrap}.timeline-label{margin:0 14px}.timeline{padding:0 12px}.transport{padding:4px 14px 14px;flex-wrap:wrap}.time{font-size:23px}.transport-buttons{gap:7px}.transport-buttons button{padding:9px 10px;font-size:14px}.transport-buttons .primary{min-width:87px}#notice{padding:0 14px 16px;font-size:12px}.channel{padding:18px 6px 16px}.channel h3{font-size:14px;line-height:1.4;min-height:39px}.filename{font-size:10px}.file-state{font-size:10px}.fader-wrap{height:190px;margin:12px 0}.fader{height:180px;width:42px}.readout{font-size:20px}.db{font-size:11px}.ms-buttons{grid-template-columns:1fr;gap:8px}.ms-buttons button{font-size:18px;min-height:46px}.file-button{font-size:12px;padding:9px 4px;min-height:46px}.fine{padding:14px;font-size:13px}.check{grid-template-columns:16px 1fr}.check>span:last-child{grid-column:2}.channel-error{font-size:10px}}
button.primary:hover:enabled{background:#e6ebf2;color:#101214}
.channels .fader{width:48px}
[hidden]{display:none!important}.song-settings{display:flex;gap:28px;align-items:center;flex-wrap:wrap;padding:0 24px 18px}.control-label{display:block;font-size:14px;font-weight:700;margin-bottom:7px}.step-control{display:flex;align-items:center;gap:8px}.step-control button{font-size:22px;min-width:48px}.step-control output{font-size:25px;font-weight:700;min-width:80px;text-align:center}.step-control input{width:94px;min-height:48px;background:#101214;color:#fff;border:1px solid #7e8996;border-radius:5px;font-size:23px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums}.setting-detail{display:block;font-size:12px;color:var(--muted);margin-top:7px}.song-details{padding:0 24px 14px;font-size:13px;color:var(--muted)}.song-details summary{cursor:pointer;min-height:32px;padding:6px 0}.song-details>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 0}.song-details input{background:#101214;color:#fff;border:1px solid #7e8996;border-radius:5px;min-height:44px;width:110px;padding:8px}.song-details select{font-size:14px}.song-details span{flex-basis:100%;font-size:12px}
@media(max-width:680px){.song-settings{padding:0 14px 14px;gap:16px}.song-settings #reset-settings{font-size:13px}.song-details{padding:0 14px 12px}.step-control output{min-width:66px}.step-control input{width:83px}.step-control button{min-width:44px;padding:8px}.setting-detail{font-size:11px}}
#cloud-key,#cloud-invite{width:320px;max-width:100%}#cloud-name,#upload-title{width:200px;max-width:100%}#offline-songs,#cloud-song{max-width:100%}#metadata-note{padding:0 24px 12px}
