:root{--bg:#0b0d12;--panel:#131722;--panel-2:#1a1f2c;--stroke:#ffffff17;--text:#eaedf2;--dim:#8b93a3;--accent:#6be6ff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:13px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden}button{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--stroke);cursor:pointer;border-radius:7px;padding:6px 11px}button:hover:not(:disabled){background:#232a3a}button:disabled{opacity:.4;cursor:default}button.primary{background:#1e4d5e;border-color:#2f7f96}button.primary:hover:not(:disabled){background:#26647a}button.active{border-color:var(--accent);color:var(--accent);background:#1e4d5e}button.wide{min-width:96px}button.tiny{padding:2px 7px;font-size:11px}select,input[type=number]{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--stroke);border-radius:6px;max-width:190px;padding:5px 7px}input[type=number]{width:62px}input[type=range]{width:120px;accent-color:var(--accent)}input[type=checkbox]{accent-color:var(--accent)}.app{grid-template-columns:240px 1fr;height:100%;display:grid}.app.dragging{outline:2px dashed var(--accent);outline-offset:-8px}.sidebar{background:var(--panel);border-right:1px solid var(--stroke);flex-direction:column;gap:8px;padding:12px;display:flex;overflow:hidden}.sidebar-title{letter-spacing:.08em;color:var(--dim);font-size:10px;font-weight:700}.library{flex-direction:column;flex:1;gap:4px;display:flex;overflow-y:auto}.library-item{text-align:left;background:0 0;border-color:#0000;flex-direction:column;gap:2px;padding:7px 9px;display:flex}.library-item.selected{background:var(--panel-2);border-color:var(--stroke)}.library-name{font-weight:600}.library-meta{color:var(--dim);font-size:10px}.hint{color:var(--dim);margin:0;font-size:11px}.main{flex-direction:column;min-width:0;height:100%;display:flex}.header{background:var(--panel);align-items:flex-start;gap:18px;padding:12px 18px 8px;display:flex}.header-title{flex:1;min-width:0}.header-title h1{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:18px;font-weight:700;overflow:hidden}.header-title p{color:var(--dim);margin:2px 0 0;font-size:11px}.stats{gap:16px;display:flex}.stat{flex-direction:column;display:flex}.stat span{color:var(--dim);letter-spacing:.06em;font-size:9px;font-weight:700}.stat strong{font:600 15px ui-monospace,monospace}.counters{gap:9px;display:flex}.counter{flex-direction:column;align-items:center;min-width:22px;display:flex}.counter span{font-size:9px;font-weight:700}.counter strong{font:600 13px ui-monospace,monospace}.progress{background:#ffffff12;height:3px}.progress-fill{background:var(--accent);height:100%}.playhead{flex:1;min-height:240px;position:relative}.playhead canvas{width:100%;height:100%;display:block}.count-in{color:var(--accent);background:#131722eb;border:1px solid #6be6ff80;border-radius:12px;padding:8px 20px;font:800 30px ui-rounded,system-ui,sans-serif;position:absolute;top:22px;left:50%;transform:translate(-50%)}.transport{background:var(--panel);border-top:1px solid var(--stroke);padding:10px 18px 8px}.transport-row{align-items:center;gap:10px;display:flex}.transport-row.wrap{flex-wrap:wrap;row-gap:8px;margin-top:10px}.spacer{flex:1}.loop-range{color:var(--dim);align-items:center;gap:4px;font-size:11px;display:flex}.labelled{flex-direction:column;gap:2px;display:flex}.labelled>span{color:var(--dim);letter-spacing:.05em;font-size:9px;font-weight:700}.inline{align-items:center;gap:5px;display:flex}.check{align-items:center;gap:5px;font-size:12px;display:flex}.segmented{border:1px solid var(--stroke);border-radius:7px;display:flex;overflow:hidden}.segmented button{border:none;border-radius:0}.segmented button.active{color:var(--accent);background:#1e4d5e}.meter{background:#ffffff14;border-radius:4px;width:84px;height:8px;overflow:hidden}.meter div{background:linear-gradient(90deg,#4df299,#ffd64f,#ff5259);height:100%}.warn{color:#ffa640;max-width:260px;font-size:11px}.shortcuts{color:var(--dim);margin:8px 0 0;font-size:10px}.toast{background:var(--panel-2);border:1px solid var(--stroke);cursor:pointer;z-index:20;border-radius:9px;max-width:70vw;padding:9px 14px;font-size:12px;position:fixed;bottom:130px;left:50%;transform:translate(-50%)}.overlay{z-index:30;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);border:1px solid var(--stroke);border-radius:14px;flex-direction:column;width:min(620px,92vw);max-height:86vh;display:flex}.sheet.wide{width:min(920px,94vw)}.sheet-header{border-bottom:1px solid var(--stroke);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.sheet-header h2{margin:0;font-size:17px}.sheet-body{padding:16px 18px;overflow-y:auto}.sheet-body h3{text-transform:uppercase;letter-spacing:.06em;color:var(--dim);margin:18px 0 8px;font-size:12px}.sheet-body h3:first-child{margin-top:0}.row{align-items:center;gap:10px;margin:10px 0;display:flex}.range{flex-direction:column;gap:3px;margin:8px 0;display:flex}.range span{font-size:11px}.range input{width:100%}.track-list{flex-direction:column;gap:6px;margin-top:10px;display:flex}.track{text-align:left;grid-template-columns:1fr auto;gap:2px;padding:9px 11px;display:grid}.track.selected{border-color:var(--accent)}.track-name{font-weight:600}.track-meta{color:var(--dim);grid-column:1;font-size:10px}.badge{color:var(--accent);grid-row:1/span 2;align-self:center;font-size:9px;font-weight:700}.score-row{align-items:center;gap:22px;display:flex}.score{color:var(--accent);font:800 42px/1 ui-rounded,system-ui,sans-serif}.score-label{color:var(--dim);font-size:10px;font-weight:700}.metrics{flex:1;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px;display:grid}.metric{background:var(--panel);border-radius:8px;padding:8px 10px}.metric span{color:var(--dim);font-size:9px;font-weight:700;display:block}.metric strong{font:600 14px ui-monospace,monospace}.judgement-grid{grid-template-columns:repeat(7,1fr);gap:8px;margin-top:14px;display:grid}.judgement{background:var(--panel);text-align:center;border-radius:8px;padding:9px 4px}.judgement strong{font:700 19px ui-monospace,monospace;display:block}.judgement span{color:var(--dim);font-size:8px;font-weight:700}.problem-bars{gap:9px;padding-bottom:4px;display:flex;overflow-x:auto}.problem-bars button{text-align:left;flex-direction:column;gap:3px;min-width:158px;padding:9px 11px;display:flex}.problem-bars span{color:var(--dim);font-size:10px}.chips{gap:6px;display:flex}.chips em{font:700 9px ui-monospace,monospace}.bar-chart{background:var(--panel);border-radius:8px;align-items:flex-end;gap:1px;height:110px;padding:6px;display:flex;overflow-x:auto}.bar-chart button{border:none;border-radius:1px;flex:1 0 3px;min-width:3px;padding:0}.device-list{margin:8px 0;padding:0;font-size:12px;list-style:none}.device-list li{align-items:center;gap:7px;padding:3px 0;display:flex}.device-list em{color:var(--dim);margin-left:auto;font-size:11px;font-style:normal}.dot{background:#4df299;border-radius:50%;width:7px;height:7px}.dot.disconnected{background:#666}.mapping{flex-direction:column;gap:6px;display:flex}.mapping-row{align-items:center;gap:9px;display:flex}.mapping-target{flex:1;font-weight:600}.mapping-target em{color:var(--dim);margin-left:6px;font-size:10px;font-style:normal;font-weight:400}.mapping-arrow{color:var(--dim);font-size:10px}.calibration-stats{background:var(--panel);border-radius:10px;gap:24px;margin:12px 0;padding:14px;display:flex}.calibration-stats span{color:var(--dim);font-size:9px;font-weight:700;display:block}.calibration-stats strong{font:700 26px ui-monospace,monospace}.calibration-stats .accent{color:var(--accent)}.meter-wrap{align-self:center;margin-left:auto}.history{border-collapse:collapse;width:100%;font-size:12px}.history th{text-align:left;color:var(--dim);border-bottom:1px solid var(--stroke);padding:5px 8px;font-size:10px}.history td{border-bottom:1px solid #ffffff0a;padding:5px 8px}
