:root{--bg:#fff;--bg-muted:#f4f5f7;--border:#e5e7eb;--border-strong:#d1d5db;--text:#111827;--text-secondary:#4b5563;--text-muted:#4b5563;--faint:#6b7280;--accent:#2563eb;--accent-muted:#eff6ff;--warning:#b45309;--warning-bg:#fffbeb;--danger:#b91c1c;--danger-bg:#fef2f2;--success:#15803d;--success-bg:#f0fdf4;--row-hover:#f8f9fb;--skeleton:#eceef1;--split-val:#0e7490;--split-test:#6d28d9;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-family:IBM Plex Sans,system-ui,sans-serif;font-size:13px;line-height:1.4}*{box-sizing:border-box}html,body,#app{background:var(--bg);min-height:100%;margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}::selection{background:#dbeafe}*{scrollbar-color:var(--border-strong) transparent}.mono{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,ui-monospace,monospace}.btn{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:4px;padding:5px 10px;font-size:12px;font-weight:500}.btn.play,.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.save{background:var(--text);border-color:var(--text);color:#fff}.btn.save:disabled{opacity:.55}.btn.save.error{background:var(--danger);border-color:var(--danger)}.save-cluster{align-items:center;gap:8px;display:flex}.save-note{white-space:nowrap;margin:0;font-size:12px;font-weight:600}.save-note.dirty{color:var(--warning)}.save-note.saving{color:var(--text-secondary)}.save-note.saved{color:var(--success)}.save-note.error{color:var(--danger);white-space:normal;max-width:280px}.btn.quiet{background:0 0}.btn:not(:disabled):hover{border-color:var(--border-strong);background:var(--bg-muted)}.btn.primary:not(:disabled):hover,.btn.play:not(:disabled):hover{background:#1d4ed8;border-color:#1d4ed8}.btn.quiet:not(:disabled):hover{background:var(--bg-muted)}.link-btn{color:var(--accent);text-underline-offset:2px;background:0 0;border:none;padding:0;font-weight:500;text-decoration:underline}.btn.warn-outline{color:var(--warning);background:var(--warning-bg);border-color:#f59e0b}.btn.danger{color:var(--danger);background:0 0;border-color:#fecaca;width:100%}.btn:disabled{opacity:.45;cursor:default}.btn.active{outline:1px solid var(--accent);outline-offset:-1px}.btn.small{padding:4px 10px}.icon-btn{border:1px solid var(--border);background:var(--bg);border-radius:4px;width:28px;height:28px;font-size:14px}.login-wrap{background:var(--bg-muted);place-items:center;min-height:100vh;padding:24px;display:grid}.login{background:var(--bg);border:1px solid var(--border);border-radius:6px;gap:12px;width:min(420px,100%);padding:24px;display:grid}.login h1{letter-spacing:-.01em;margin:0;font-size:20px;font-weight:600}.login p{color:var(--text-secondary);margin:0}.login input,.field input,.field select,.field textarea,.search{border:1px solid var(--border);background:var(--bg);border-radius:4px;width:100%;padding:7px 10px}.error{color:var(--danger);margin:0}.app-list{grid-template-columns:208px minmax(0,1fr);min-height:100vh;display:grid}.rail{background:var(--bg-muted);border-right:1px solid var(--border);flex-direction:column;gap:18px;height:100vh;padding:18px 12px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.rail-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:0 0 4px 10px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px}.rail-actions{gap:4px;margin-top:4px;display:flex}.rail-form{margin-top:6px}.build-tag{color:var(--text-muted);margin:0;font-size:11px}.build-tag a{color:var(--text-secondary);text-decoration:none}.build-tag a:hover{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.brand{align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.mark{background:var(--accent);border-radius:3px;width:14px;height:14px}.rail nav{flex-direction:column;gap:2px;display:flex}.nav-btn{text-align:left;width:100%;color:var(--text-secondary);background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:8px;padding:7px 10px;font-weight:500;display:flex}.nav-btn:hover{color:var(--text);background:#1118270a}.nav-btn.active{background:var(--bg);color:var(--text);border-color:var(--border)}.dot{background:var(--border-strong);border-radius:50%;width:6px;height:6px}.dot.on{background:var(--accent)}.rail-foot{border-top:1px solid var(--border);color:var(--text-muted);flex-direction:column;gap:8px;margin-top:auto;padding-top:12px;font-size:12px;display:flex}.stat{justify-content:space-between;display:flex}.list-main{min-width:0;padding:24px 32px 40px}.list-main.contained{flex-direction:column;height:100vh;padding-bottom:20px;display:flex;overflow:hidden}.list-main.contained>*{flex-shrink:0}.list-main.contained>.list-region{flex-direction:column;flex:auto;min-height:0;display:flex}.list-scroll{overscroll-behavior:contain;border:1px solid var(--border);background:var(--bg);border-radius:6px;flex:0 auto;min-height:0;overflow:auto}.list-foot{border-top:1px solid var(--border);align-items:center;gap:12px;padding:10px 12px;font-size:12px;display:flex}.list-foot .btn,.list-foot>.faint:last-child{margin-left:auto}.list-sentinel{width:1px;height:1px}.banner-error{margin:-8px 0 14px}.top{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.crumb{color:var(--text-muted);margin:0 0 4px;font-size:12px}.list-main h1{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:600}.top-actions{flex-shrink:0;gap:8px;display:flex}.summary{background:var(--border);border:1px solid var(--border);border-radius:6px;grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:16px;display:grid;overflow:hidden}.metric{background:var(--bg);flex-direction:column;gap:3px;padding:12px 16px;display:flex}.metric .label,.panel-label,.inspector .lbl,.samples th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px;font-weight:500}.metric .num{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:22px;font-weight:600}.metric .den{color:var(--text-muted);font-size:14px;font-weight:500}.metric .sub,.meta{color:var(--text-muted);font-size:12px}.metric .num.warn,.count.warn,.warn{color:var(--warning)}.metric .num.danger,.count.danger{color:var(--danger)}.bar,.mini{background:var(--bg-muted);border-radius:2px;height:4px;margin-top:6px;overflow:hidden}.bar i,.mini i{background:var(--success);height:100%;display:block}.mini{vertical-align:middle;width:72px;margin:0 8px 0 0;display:inline-block}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.filters{flex-wrap:wrap;gap:4px;display:flex}.chip{color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:500;display:inline-flex}.chip:hover{color:var(--text);background:var(--bg-muted)}.chip.on{background:var(--text);color:#fff}.chip-count{color:var(--faint);font-size:11px}.chip.on .chip-count{color:#d1d5db}.search{width:240px}.samples{border-collapse:separate;border-spacing:0;width:100%}.samples th{text-align:left;border-bottom:1px solid var(--border);background:var(--bg-muted);z-index:1;white-space:nowrap;padding:8px 12px;position:sticky;top:0}.samples td{border-bottom:1px solid var(--border);vertical-align:middle;padding:7px 12px}.samples tbody tr:last-child td{border-bottom:none}.samples tbody tr.sample-row{cursor:pointer}.samples tbody tr.sample-row:hover{background:var(--row-hover)}.samples tbody tr.sample-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--accent-muted)}.samples strong{margin-bottom:1px;font-weight:600;display:block}.samples .col-split{width:88px}.samples .col-progress{white-space:nowrap;width:168px}.samples .col-num{text-align:right;width:92px}.samples .col-time{white-space:nowrap;width:104px}.col-title{min-width:0}.col-title strong,.col-title .meta{text-overflow:ellipsis;white-space:nowrap;max-width:52ch;overflow:hidden}.col-title .meta{display:block}.split{color:var(--text-secondary);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px}.split.val{color:var(--split-val)}.split.test{color:var(--split-test)}.segmented{border:1px solid var(--border);background:var(--bg-muted);border-radius:5px;gap:2px;padding:2px;display:inline-flex}.seg{display:inline-flex;position:relative}.seg input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.seg input:disabled{cursor:default}.seg span{color:var(--text-muted);border-radius:3px;padding:3px 9px;font-size:12px;font-weight:500}.seg input:not(:checked):not(:disabled):hover+span{color:var(--text)}.seg input:checked+span{background:var(--bg);color:var(--text);box-shadow:0 0 0 1px var(--border-strong)}.seg.val input:checked+span{color:var(--split-val)}.seg.test input:checked+span{color:var(--split-test)}.seg input:focus-visible+span{outline:2px solid var(--accent);outline-offset:1px}.skeleton-row td{padding-top:13px;padding-bottom:13px}.skeleton{background:var(--skeleton);border-radius:3px;height:10px;animation:1.4s ease-in-out infinite skeleton;display:block}@keyframes skeleton{50%{opacity:.5}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.count{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;font-weight:500}.count.ok{color:var(--success)}.import{border:1px solid var(--border);background:var(--bg-muted);border-radius:6px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;gap:10px 14px;margin:0 0 16px;padding:14px 16px;display:grid}.import-title{grid-column:1/-1;font-size:13px}.import-actions{grid-column:1/-1;gap:8px;display:flex}.field{color:var(--text-secondary);gap:4px;font-size:12px;display:grid}.editor-app{flex-direction:column;min-height:100vh;display:flex}.titlebar{border-bottom:1px solid var(--border);background:var(--bg);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 14px;display:flex}.titlebar .left{flex:260px;align-items:center;gap:10px;min-width:0;display:flex}.title-text{min-width:0}.title-text .sub{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.titlebar h1{margin:0;font-size:16px;font-weight:600}.sub{color:var(--text-muted);margin:1px 0 0;font-size:12px}.progress{border:1px solid var(--border);color:var(--text-muted);white-space:nowrap;border-radius:4px;align-items:center;gap:8px;padding:4px 8px;font-size:12px;display:flex}.pbar{background:var(--bg-muted);border-radius:1px;width:56px;height:3px;overflow:hidden}.pbar i{background:var(--success);height:100%;display:block}.titlebar .right,.queue{align-items:center;gap:6px;display:flex}.status-chip{border:1px solid var(--border);border-radius:3px;padding:3px 8px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px}.status-chip.warn{color:var(--warning);background:var(--warning-bg);border-color:#fde68a}.status-chip.danger{color:var(--danger);background:var(--danger-bg);border-color:#fecaca}.workspace{flex:1;grid-template-columns:1fr 300px;min-height:0;display:grid}.stage{flex-direction:column;gap:8px;min-width:0;padding:10px 12px 16px;display:flex}.transport{border:1px solid var(--border);background:var(--bg);border-radius:4px;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:8px;display:flex}.cluster{border-right:1px solid var(--border);align-items:center;gap:4px;padding-right:10px;display:flex}.cluster.view{border-right:none}.zoom{color:var(--text-muted);text-align:center;min-width:48px;font-size:12px}.scrub-chip{background:var(--text);color:#fff;border-radius:3px;padding:4px 10px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px}.readout{gap:14px;margin-left:auto;font-size:12px;display:flex}.readout .lbl{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-right:5px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px}.delta{color:var(--accent);margin-left:4px;font-family:IBM Plex Mono,ui-monospace,monospace}.panel{border:1px solid var(--border);background:var(--bg);border-radius:6px;padding:6px 8px 4px}.panel-label{margin:0 0 2px 2px}.panel-label .hint{text-transform:none;letter-spacing:0;color:var(--faint);margin-left:8px;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:11px}.staff-scroll{overflow-x:auto}.staff-stage{min-height:168px;position:relative}.staff-playhead{background:var(--accent);pointer-events:none;width:1px;position:absolute;top:4px;bottom:8px}.staff-playhead:before{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-top:7px solid var(--accent);position:absolute;top:0;left:-4px}.wave-box{background:var(--bg);height:168px;position:relative;overflow:hidden}.wave{cursor:crosshair;width:100%;height:100%;display:block}.wave-overlay{pointer-events:none;position:absolute;inset:0}.score-line,.onset-line,.playhead-line{pointer-events:none;width:1px;position:absolute;top:8px;bottom:18px}.score-line{border-left:1px dashed #6b7280}.score-line.is-hovered{z-index:2;border-left:2px dashed #7c3aed}.onset-anchor{pointer-events:auto;z-index:4;width:18px;margin-left:-9px;position:absolute;top:0;bottom:0}.onset-anchor .onset-line,.onset-anchor .grab{left:9px}.onset-anchor.is-hovered{z-index:6}.onset-anchor.is-hovered .onset-line,.onset-line.is-hovered{background:#7c3aed;width:3px;margin-left:-1px;box-shadow:0 0 0 3px #7c3aed59}.onset-anchor.is-selected .onset-line{background:var(--accent);width:2px}.onset-anchor.is-hovered .onset-line{background:#7c3aed;width:3px;margin-left:-1px;box-shadow:0 0 0 3px #7c3aed59}.onset-line{background:var(--text)}.onset-line.warn{background:var(--warning)}.onset-line.miss{background:var(--danger)}.onset-line.selected{background:var(--accent)}.playhead-line{background:var(--accent);z-index:3;left:0}.playhead-line:before{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-top:7px solid var(--accent);position:absolute;top:-1px;left:-4px}.grab{pointer-events:auto;cursor:ew-resize;background:var(--text);z-index:4;border:1px solid #fff;width:11px;height:11px;margin-left:-5px;padding:0;position:absolute;top:2px;transform:rotate(45deg)}.onset-anchor.is-hovered .grab{background:#7c3aed;width:16px;height:16px;margin-left:-8px;box-shadow:0 0 0 2px #fff,0 0 0 4px #7c3aed}.grab.warn{background:var(--warning)}.grab.miss{background:var(--danger)}.grab.selected{background:var(--accent);width:14px;height:14px;margin-left:-7px}.time-chip{background:var(--text);color:#fff;pointer-events:none;z-index:5;white-space:nowrap;border-radius:3px;padding:2px 6px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px;position:absolute;top:2px;left:16px}.time-chip .delta,.time-chip .score-time{color:#ddd6fe;display:block}.staff-note.is-hovered{filter:drop-shadow(0 0 2px #7c3aed)drop-shadow(0 0 1px #7c3aed)}.band{background:var(--accent);opacity:.08;pointer-events:none;position:absolute;top:0;bottom:16px}.band.is-hovered{opacity:.2;background:#7c3aed}.band.warn{background:var(--warning)}.band.miss{background:var(--danger)}.grid-label{color:var(--text-secondary);pointer-events:none;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:10px;position:absolute;bottom:1px;transform:translate(-50%)}.grid-line{background:var(--border);pointer-events:none;width:1px;position:absolute;top:0;bottom:16px}.legend{color:var(--text-muted);flex-wrap:wrap;gap:12px;padding:2px 6px 6px;font-size:11px;display:flex}.legend i{vertical-align:middle;width:12px;height:2px;margin-right:5px;display:inline-block}.l-score{border-top:1px dashed #6b7280;height:0}.l-onset{background:var(--text)}.l-play{background:var(--accent)}.l-amber{background:var(--warning)}.l-rose{background:var(--danger)}.l-hover{background:#7c3aed}.pitch-lane{width:100%;height:132px;display:block}.roll-note{fill:#9ca3af;cursor:pointer}.roll-note.reviewed{fill:var(--success)}.roll-note.warn{fill:var(--warning)}.roll-note.miss{fill:var(--danger)}.roll-note.excluded{fill:#e5e7eb;stroke:#9ca3af;stroke-dasharray:2 2}.roll-note.is-selected{fill:var(--accent)}.roll-note.is-focus{stroke:var(--text);stroke-width:1.5px}.tap{align-items:center;gap:6px;font-size:12px;display:flex}.tap .lbl{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px}.tap input{border:1px solid var(--border);background:var(--bg);text-align:right;border-radius:4px;width:58px;padding:3px 6px}.tap .unit{color:var(--text-muted)}.selection-note{background:var(--accent-muted);color:var(--accent);border-radius:3px;margin:6px 0 0;padding:6px 8px;font-size:12px;font-weight:500}.labels{gap:4px;display:grid}.labels-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.labels-head .lbl{margin:0}.label-row{color:var(--text-muted);grid-template-columns:1fr 120px;align-items:center;gap:8px;font-size:12px;display:grid}.label-row select,.overflow select{border:1px solid var(--border);background:var(--bg);border-radius:4px;min-width:0;padding:3px 6px}.label-row kbd,.label-checks kbd{margin-left:3px;padding:1px 4px;font-size:10px}.label-checks{grid-template-columns:1fr 1fr;gap:4px 8px;margin-top:4px;font-size:12px;display:grid}.label-checks label{align-items:center;gap:5px;display:flex}.overflow .field select{width:100%}.inspector{border-left:1px solid var(--border);background:var(--bg-muted);flex-direction:column;align-self:start;gap:12px;max-height:100vh;padding:16px 14px;display:flex;position:sticky;top:0;overflow:auto}.inspector h2{margin:2px 0;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:28px;font-weight:600}.inspector .meta{color:var(--text-muted);margin:0;font-size:12px}.banner{background:var(--warning-bg);color:var(--warning);border:1px solid #fde68a;border-radius:3px;margin:0;padding:6px 8px;font-size:12px;font-weight:500}.block{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:8px 10px}.row{justify-content:space-between;gap:8px;padding:4px 0;font-size:12px;display:flex}.row span{color:var(--text-muted)}.row.ok strong{color:var(--success)}.checks{flex-direction:column;gap:6px;font-size:13px;font-weight:500;display:flex}.checks label{align-items:center;gap:7px;display:flex}.nudge-row{grid-template-columns:repeat(4,1fr);gap:4px;margin-top:6px;display:grid}.hint{color:var(--text-muted);margin:6px 0 0;font-size:12px}.comment textarea{border:1px solid var(--border);background:var(--bg);resize:vertical;border-radius:4px;width:100%;margin-top:4px;padding:6px 8px}.actions{flex-direction:column;gap:6px;display:flex}.overflow{border-top:1px solid var(--border);gap:8px;margin-top:auto;padding-top:10px;display:grid}.keys-back{z-index:20;background:#11182773;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.keys-modal{background:var(--bg);border:1px solid var(--border);border-radius:6px;width:min(880px,100%);padding:28px 32px 24px}.keys-modal header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.keys-modal h1{margin:0 0 6px;font-size:20px;font-weight:600}.keys-modal .intro{color:var(--text-muted);max-width:48ch;margin:0}.keys-grid{grid-template-columns:1fr 1fr;gap:24px 36px;margin-top:24px;display:grid}.keys-grid h2{margin:0 0 10px;font-size:11px}.keys-grid ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.keys-grid li{align-items:center;gap:10px;display:flex}kbd{border:1px solid var(--border);background:var(--bg-muted);border-radius:3px;padding:3px 7px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px}.keys-modal footer{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:20px;margin-top:24px;padding-top:18px;display:flex}.keys-modal .tip{max-width:48ch;color:var(--text-muted);margin:0;font-size:12px}@media (width<=1100px){.samples .col-progress{width:132px}.samples .col-progress .mini{width:48px}.samples .col-num{width:80px}}@media (width<=900px){.app-list,.workspace{grid-template-columns:1fr}.rail{border-right:0;border-bottom:1px solid var(--border);height:auto;position:static}.list-main.contained{height:auto;overflow:visible}.list-scroll{overflow:visible}.search{width:100%}.inspector{border-left:0;border-top:1px solid var(--border);max-height:none;position:static}.summary,.keys-grid{grid-template-columns:1fr 1fr}.list-main{padding:20px 16px 32px}}.exp-main{min-width:0;max-width:1280px}.exp-main a{color:var(--accent);text-decoration:none}.exp-main a:hover{text-underline-offset:2px;text-decoration:underline}.nav-btn{text-decoration:none}.nav-count{color:var(--text-muted);margin-left:auto;font-size:11px}.faint{color:var(--faint)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.refresh-note{color:var(--faint);align-self:center;font-size:12px}.exp-summary{grid-template-columns:repeat(3,1fr)}.tag-select{width:140px}.clamp{text-overflow:ellipsis;white-space:nowrap;max-width:260px;display:block;overflow:hidden}.exp-table .pick-col{width:34px;padding-right:0}.exp-table input[type=checkbox],.pick input{accent-color:var(--accent);width:15px;height:15px}.empty-row{text-align:center;color:var(--text-muted);padding:28px 12px!important}.empty{border:1px dashed var(--border-strong);border-radius:6px;margin-bottom:16px;padding:18px 20px}.empty p{color:var(--text-secondary);max-width:68ch;margin:4px 0 0}.badge{border:1px solid var(--border);color:var(--text-secondary);background:var(--bg-muted);white-space:nowrap;border-radius:3px;align-items:center;gap:6px;padding:2px 7px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px;font-weight:500;display:inline-flex}.badge.running{color:var(--accent);background:var(--accent-muted);border-color:#bfdbfe}.badge.succeeded{color:var(--success);background:var(--success-bg);border-color:#bbf7d0}.badge.failed{color:var(--danger);background:var(--danger-bg);border-color:#fecaca}.badge.stale{color:var(--warning);background:var(--warning-bg);border-color:#fde68a}.badge.cancelled,.badge.legacy,.badge.unknown{color:var(--text-muted)}.badge.queued{color:var(--text)}.badge.archive{color:var(--text-muted);border-style:dashed;border-color:var(--border-strong);background:0 0}.badge-row{flex-wrap:wrap;gap:4px;display:inline-flex}.pulse{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.6s ease-out infinite pulse}@keyframes pulse{0%{box-shadow:0 0 #2563eb73}to{box-shadow:0 0 0 6px #2563eb00}}@media (prefers-reduced-motion:reduce){.pulse{animation:none}}.tag{color:var(--text-secondary);border:1px solid var(--border);border-radius:3px;padding:1px 6px;font-size:11px}.title-block{min-width:0}.head-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.notice{border:1px solid var(--border);border-radius:6px;margin-bottom:16px;padding:10px 14px}.notice ul{margin:6px 0 0;padding-left:18px}.warn-notice{background:var(--warning-bg);color:var(--warning);border-color:#fde68a}.warn-notice li{color:var(--text);font-size:12px}.tabs{border-bottom:1px solid var(--border);gap:2px;margin-bottom:18px;display:flex}.tab{color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 12px;font-weight:500}.tab.on{color:var(--text);border-bottom-color:var(--text)}.tab:hover{color:var(--text)}.overview{gap:16px;display:grid}.exp-main .panel{min-width:0;padding:14px 16px 16px}.exp-main .panel h2{align-items:baseline;gap:8px;margin:0 0 10px;font-size:13px;font-weight:600;display:flex}.exp-main .panel h3{color:var(--text-secondary);margin:14px 0 6px;font-size:12px;font-weight:600}.two-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.hypothesis{max-width:70ch;color:var(--text);margin:0 0 10px;line-height:1.5}.status-panel{border:1px solid var(--border);border-radius:6px;grid-template-columns:minmax(0,1.2fr) minmax(0,2fr);align-items:center;gap:20px;padding:14px 16px;display:grid}.status-line{align-items:center;gap:10px;min-width:0;display:flex}.status-msg{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar.big{height:6px;margin-top:10px}.bar.big i{background:var(--accent);transition:width .6s cubic-bezier(.16,1,.3,1)}.facts{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0;display:grid}.facts dt,.kv dt{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px}.facts dd{margin:3px 0 0;font-size:14px;font-weight:500}.kv{grid-template-columns:max-content minmax(0,1fr);align-items:baseline;gap:6px 14px;margin:0;display:grid}.kv dd{overflow-wrap:anywhere;margin:0}.kv-table{border-collapse:collapse;width:100%}.kv-table th,.kv-table td{border-bottom:1px solid var(--border);text-align:left;padding:6px 8px;font-weight:400}.kv-table tr:last-child th,.kv-table tr:last-child td{border-bottom:none}.kv-table tr.hl th,.kv-table tr.hl td{background:var(--accent-muted);font-weight:600}.num-cell{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right!important}.delta{color:var(--text-muted);font-size:11px}.charts{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:14px 20px;display:grid}.chart{min-width:0;margin:0}.chart figcaption{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:4px;display:flex}.chart-title{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;font-weight:500}.chip.tiny{border-color:var(--border);margin-left:auto;padding:1px 6px;font-size:11px}.legend{color:var(--text-secondary);flex-wrap:wrap;gap:4px 12px;font-size:12px;display:flex}.legend-item{align-items:center;gap:5px;display:inline-flex}.legend-item i,.tip-row i,.swatch{border-radius:2px;width:10px;height:3px;display:inline-block}.swatch{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:6px}.chart-box{width:100%;position:relative}.chart-box svg{display:block;overflow:visible}.chart .grid{stroke:var(--border);stroke-width:1px}.chart .tick{fill:var(--faint);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:10px}.chart .crosshair{stroke:var(--border-strong);stroke-width:1px;stroke-dasharray:3 3}.chart-tip{pointer-events:none;background:var(--bg);border:1px solid var(--border);border-radius:4px;gap:2px;min-width:150px;padding:6px 8px;font-size:12px;display:grid;position:absolute;top:6px;box-shadow:0 4px 12px #11182714}.tip-row{grid-template-columns:10px 1fr auto;align-items:center;gap:6px;display:grid}.log{color:#e2e8f0;white-space:pre-wrap;word-break:break-word;background:#0f172a;border-radius:4px;max-height:340px;margin:0;padding:10px 12px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;line-height:1.5;overflow:auto}.log::selection{background:#334155}.log ::selection{background:#334155}.json-view{font-size:12px;line-height:1.55;overflow-x:auto}.json-node>summary{cursor:pointer;list-style:none}.json-node>summary::-webkit-details-marker{display:none}.json-node>summary:before{content:"+";width:12px;color:var(--faint);display:inline-block}.json-node[open]>summary:before{content:"−"}.json-children{border-left:1px solid var(--border);margin-left:4px;padding-left:14px}.json-row{white-space:pre-wrap;word-break:break-word;padding-left:12px}.json-key{color:var(--text-secondary)}.json-str{color:#15803d}.json-num{color:#1d4ed8}.json-bool,.json-null{color:#9333ea}.fb{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.fb-tree{border:1px solid var(--border);border-radius:6px;min-width:0}.fb-tools{border-bottom:1px solid var(--border);background:var(--bg-muted);align-items:center;gap:10px;padding:8px;display:flex}.fb-tools .search{flex:1;width:auto}.fb-list{max-height:70vh;margin:0;padding:4px 0;list-style:none;overflow:auto}.fb-row{grid-template-columns:minmax(0,1fr) auto 64px;align-items:center;gap:8px;padding:2px 8px;display:grid}.fb-row:hover{background:var(--bg-muted)}.fb-row.on{background:var(--accent-muted)}.fb-name{text-align:left;background:0 0;border:none;align-items:center;gap:6px;min-width:0;padding:4px 0;display:flex}.fb-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fb-row.dir .fb-label{font-weight:500}.caret{color:var(--faint);flex:none;transition:transform .15s ease-out}.caret.open{transform:rotate(90deg)}.kind{width:38px;color:var(--faint);text-transform:uppercase;flex:none;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:10px}.kind.audio{color:var(--accent)}.kind.image{color:#7c3aed}.kind.json{color:var(--success)}.fb-row .btn.small{padding:2px 6px;font-size:11px}.fb-preview{border:1px solid var(--border);border-radius:6px;min-width:0;padding:12px 14px;position:sticky;top:16px}.preview{gap:10px;display:grid}.preview-head{flex-wrap:wrap;align-items:baseline;gap:6px 10px;display:flex}.preview-head strong{overflow-wrap:anywhere;font-size:12px}.preview-head .btn{margin-left:auto}.preview-audio{width:100%}.preview-img{border:1px solid var(--border);background:var(--bg-muted);border-radius:4px;max-width:100%}.preview-text{white-space:pre-wrap;word-break:break-word;background:var(--bg-muted);border-radius:4px;max-height:60vh;margin:0;padding:10px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;overflow:auto}.listen{gap:18px;display:grid}.listen-group{gap:8px;display:grid}.listen-actions{flex-wrap:wrap;gap:6px;display:flex}.ab{border:1px solid var(--border);border-radius:6px;gap:10px;padding:12px 14px;transition:border-color .15s ease-out;display:grid}.ab.owner{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.ab-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.ab-head h3{margin:0;font-size:14px;font-weight:600}.ab-keys{color:var(--faint);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px}.ab-transport{grid-template-columns:auto auto minmax(120px,1fr) auto;align-items:center;gap:12px;display:grid}.ab-play{min-width:64px}.ab-time{white-space:nowrap;font-size:13px}.ab-seek{align-items:center;height:24px;display:flex;position:relative}.ab-seek input{width:100%;accent-color:var(--accent);z-index:1;position:relative}.ab-loop{background:var(--accent-muted);border:1px solid #bfdbfe;border-radius:3px;position:absolute;top:3px;bottom:3px}.ab-loop-ctl{gap:4px;display:flex}.ab-clips{gap:4px;margin:0;padding:0;list-style:none;display:grid}.ab-clip{border:1px solid var(--border);border-radius:4px}.ab-clip.on{border-color:var(--accent);background:var(--accent-muted)}.ab-pick{text-align:left;background:0 0;border:none;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:7px 10px;display:grid}.ab-pick:disabled{cursor:default;opacity:.6}.ab-clip.on kbd{background:var(--accent);border-color:var(--accent);color:#fff}.ab-label{flex-direction:column;min-width:0;display:flex}.ab-label .meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ab audio{display:none}.tray-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.tray-list li{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:4px 0;display:grid}.tray-list .faint{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.pick{border:1px solid var(--border);cursor:pointer;border-radius:4px;align-items:center;gap:6px;padding:5px 8px;display:inline-flex}.pick.on{border-color:var(--text)}.pick .swatch{margin-right:0}.table-scroll{overflow-x:auto}.compare-table th{white-space:nowrap}.compare-table thead th:not(:first-child){text-transform:none;letter-spacing:0;color:var(--text);font-family:IBM Plex Sans,system-ui,sans-serif;font-size:12px;font-weight:600}@media (width<=1000px){.two-col,.fb,.status-panel{grid-template-columns:1fr}.facts{grid-template-columns:repeat(3,minmax(0,1fr))}.fb-preview{position:static}.ab-transport{grid-template-columns:auto auto 1fr}.ab-loop-ctl{grid-column:1/-1}}@media (width<=720px){.app-list{grid-template-columns:1fr}.exp-main{padding:18px 16px 32px}.top{flex-direction:column;align-items:flex-start}.toolbar{flex-direction:column;align-items:stretch}.filters{flex-wrap:wrap}.exp-summary{grid-template-columns:1fr 1fr 1fr}.charts{grid-template-columns:1fr}.exp-table{display:block;overflow-x:auto}}.compare-table{border:1px solid var(--border);border-radius:6px}
