.slicer-panel{display:flex;flex-direction:column;gap:var(--sp-5);flex:1;min-height:0;overflow-y:auto;padding-bottom:var(--sp-5)}.slicer-top{flex-shrink:0}.slicer-inline{display:inline-flex;align-items:center;gap:var(--sp-2)}.slicer-sample-field{max-width:260px}.slicer-sample-name{height:var(--h-md);display:flex;align-items:center;font-size:var(--fs-4);font-weight:600;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slicer-chop-sens-wrap .slider{width:90px;height:var(--h-md);margin:0}#slicer-chop-sens-val{color:var(--text-2);font-variant-numeric:tabular-nums}.slicer-wave{display:flex;flex-direction:column;gap:var(--sp-2);flex-shrink:0}.slicer-viz{position:relative;height:180px;background:var(--surface-well);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;cursor:crosshair;user-select:none}#slicer-waveform{width:100%;height:100%;display:block}.slicer-viz.drag-over{outline:2px dashed var(--accent);outline-offset:-4px}#slicer-hover-line{position:absolute;top:0;bottom:0;width:1px;background:var(--tint-4);pointer-events:none;display:none}.slicer-fit-btn{position:absolute;top:var(--sp-3);right:var(--sp-3)}.slicer-viz.no-sample .slicer-fit-btn{display:none}.slicer-overview{display:block;width:100%;height:28px;background:var(--surface-well);border:1px solid var(--line);border-radius:var(--r-ctl);cursor:grab;touch-action:none}.slicer-overview[hidden]{display:none}.sampler-drop-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--text-2);font-size:var(--fs-4);font-weight:500;pointer-events:none;opacity:0;transition:opacity .15s;text-align:center;padding:var(--sp-5) var(--sp-7);border:2px dashed var(--line);border-radius:var(--r-card);background:var(--shade-2);white-space:nowrap}.slicer-viz.no-sample .sampler-drop-hint{opacity:.55}.slicer-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--scrim);color:var(--text-1);font-size:var(--fs-3);pointer-events:none;z-index:3}.slicer-loading[hidden]{display:none}.slicer-main{display:grid;grid-template-columns:minmax(320px,1.3fr) minmax(260px,1fr) minmax(260px,1fr);gap:var(--sp-5);align-items:start;flex-shrink:0}@media(max-width:1200px){.slicer-main{grid-template-columns:minmax(300px,1fr) minmax(260px,1fr)}.slicer-pads-card{grid-row:span 2}}@media(max-width:760px){.slicer-main{grid-template-columns:minmax(0,1fr)}.slicer-pads-card{grid-row:auto}}.slicer-main .card-header{text-transform:none;letter-spacing:normal;flex-wrap:wrap}.slicer-rec-btn.recording,.slicer-rec-btn[aria-pressed=true]{background:var(--danger);border-color:var(--danger);color:var(--on-danger);animation:slicer-rec-pulse 1s ease-in-out infinite}@keyframes slicer-rec-pulse{50%{opacity:.65}}.slicer-bank-tabs{display:flex;gap:var(--sp-2);margin-left:auto}.slicer-bank-btn{min-width:var(--h-sm);padding:0 var(--sp-3)}.slicer-pad-grid[hidden],.slicer-keys[hidden]{display:none}.slicer-pad-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-3)}.slicer-empty-hint{grid-column:1 / -1;padding:var(--sp-7) 0;color:var(--text-3);font-size:var(--fs-2);font-style:italic}.slice-pad{position:relative;height:64px;border-radius:var(--r-card);border:1px solid color-mix(in srgb,var(--slice-color) 55%,var(--line));background:color-mix(in srgb,var(--slice-color) 10%,var(--surface-3));color:var(--text-1);overflow:hidden;cursor:grab;user-select:none;transition:background .1s,border-color .1s}.slice-pad:hover{background:color-mix(in srgb,var(--slice-color) 20%,var(--surface-3))}.slice-pad:active{cursor:grabbing}.slice-pad.selected{border-color:var(--slice-color);box-shadow:inset 0 0 0 1px var(--slice-color),0 0 0 2px color-mix(in srgb,var(--slice-color) 35%,transparent);background:color-mix(in srgb,var(--slice-color) 24%,var(--surface-3))}.slice-pad.has-own-sample{border-style:dashed}.slice-pad.empty{border:1px dashed var(--line);background:transparent;cursor:default}.slice-pad-wave{position:absolute;inset:18px 4px 14px;width:calc(100% - 8px);height:calc(100% - 32px);opacity:.85;pointer-events:none}.slice-pad-num{position:absolute;top:3px;left:6px;font-size:var(--fs-1);font-weight:700;pointer-events:none}.slice-pad-key{position:absolute;top:3px;right:4px;min-width:16px;padding:0 3px;font-size:9px;font-weight:600;line-height:14px;text-align:center;color:var(--text-2);font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--line);border-radius:3px;pointer-events:none}.slice-pad-flags{position:absolute;left:6px;right:6px;bottom:2px;font-size:9px;font-weight:700;color:var(--text-2);font-family:var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.slice-pad.hit{animation:slice-pad-hit .18s ease-out}@keyframes slice-pad-hit{0%{box-shadow:inset 0 0 24px color-mix(in srgb,var(--slice-color) 90%,transparent)}to{box-shadow:inset 0 0 0 transparent}}.slicer-keys{display:flex;flex-direction:column;gap:8px}.sk-controls{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.sk-controls select,.sk-controls input[type=range]{max-width:110px}.sk-hint{font-size:11px;color:var(--text3)}.sk-piano{position:relative;display:flex;height:110px;user-select:none;touch-action:none;border-radius:0 0 6px 6px;overflow:hidden}.sk-key{position:relative;cursor:pointer;box-sizing:border-box}.sk-key.white{height:100%;background:var(--key-white);border:1px solid var(--shade-2);border-top:none;border-radius:0 0 5px 5px}.sk-key.black{position:absolute;top:0;height:62%;background:var(--key-black);border:1px solid var(--shade-3);border-radius:0 0 4px 4px;z-index:2}.sk-key.white:hover{background:var(--key-white-hover)}.sk-key.black:hover{background:var(--key-black-hover)}.sk-key.active{background:var(--accent2)!important}.sk-key.root:after{content:"";position:absolute;left:50%;bottom:22px;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--accent)}.sk-key.black.root:after{bottom:14px}.sk-label{position:absolute;bottom:6px;left:0;right:0;text-align:center;font-size:10px;font-weight:600;color:var(--text-3);font-family:var(--font-mono);pointer-events:none}.sk-key.black .sk-label{color:var(--text-2);bottom:3px;font-size:9px}.sk-name{position:absolute;top:4px;left:0;right:0;text-align:center;font-size:9px;color:var(--text-3);pointer-events:none}.ssi-head{gap:var(--sp-3)}.ssi-swatch{width:12px;height:12px;border-radius:3px;background:var(--slice-color);flex-shrink:0}.ssi-num{font-family:var(--font-mono);color:var(--text-3)}.ssi-name{flex:1;min-width:0;background:transparent;color:var(--text-1);border:1px solid transparent;border-radius:var(--r-ctl);font:inherit;font-size:var(--fs-3);font-weight:600;padding:2px 4px}.ssi-name:hover,.ssi-name:focus{border-color:var(--line);background:var(--surface-3);outline:none}.ssi-meta{color:var(--text-2);font-family:var(--font-mono);font-size:var(--fs-1)}.ssi-settings{display:flex;flex-direction:column;gap:var(--sp-4)}.ssi-param{display:grid;grid-template-columns:44px minmax(0,1fr) 64px;align-items:center;gap:var(--sp-4)}.ssi-param .field-label{font-size:var(--fs-1);font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}.ssi-param .slider{width:100%;accent-color:var(--track-slicer)}.ssi-val{font-family:var(--font-mono);font-size:var(--fs-1);color:var(--text-2);text-align:right;font-variant-numeric:tabular-nums}.ssi-toggles{display:flex;gap:var(--sp-3);flex-wrap:wrap}.ssi-actions{display:flex;gap:var(--sp-3);flex-wrap:wrap;padding-top:var(--sp-2);border-top:1px solid var(--line-soft)}.ssi-empty{color:var(--text-2);font-size:var(--fs-2);line-height:1.5}.ssi-empty ol{margin:0;padding-left:18px}.slicer-tempo-card .bpm-bars{margin-left:auto;font-weight:500;color:var(--text-3)}.slicer-bpm-row{display:flex;align-items:flex-end;gap:var(--sp-4);flex-wrap:wrap}.bpm-detected-input{width:88px;font-size:var(--fs-4);font-weight:700;color:var(--accent)}.slicer-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3) var(--sp-5)}.slicer-knobs{display:flex;gap:var(--sp-6)}.slicer-knob{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1)}.slicer-knob .field-label{font-size:var(--fs-1);font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.slicer-knob-val{font-family:var(--font-mono);font-size:var(--fs-1);color:var(--text-2);font-variant-numeric:tabular-nums}.slicer-sequencer{flex:1 1 auto;min-height:240px}.slicer-seq-controls{text-transform:none;letter-spacing:normal;font-weight:500;flex-wrap:wrap;align-items:center}.slicer-seq-controls .toolbar-group{align-items:center;gap:var(--sp-2)}.slicer-seq-title{font-size:var(--fs-1);font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.06em}.slice-roll{display:flex;flex:1 1 auto;min-height:200px;overflow:hidden;border-radius:0 0 var(--r-card) var(--r-card)}.roll-gutter{flex:0 0 auto;width:132px;background:var(--surface-3);border-right:1px solid var(--line);z-index:2}.roll-gutter-pad{display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-3);font-size:var(--fs-1);border-bottom:1px solid var(--line-soft);border-left:3px solid var(--slice-color);color:var(--text-2);cursor:pointer;box-sizing:border-box}.roll-gutter-pad:hover{background:var(--surface-4);color:var(--text-1)}.roll-gutter-pad.selected{background:color-mix(in srgb,var(--slice-color) 22%,var(--surface-3));color:var(--text-1)}.roll-gutter-num{font-family:var(--font-mono);font-weight:700;min-width:16px;color:var(--text-3)}.roll-gutter-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roll-scroll{flex:1 1 auto;overflow:auto}.roll-canvas{position:relative}.roll-grid-line{position:absolute;top:0;bottom:0;width:1px;background:var(--tint-2);pointer-events:none}.roll-grid-line.beat{background:var(--tint-3)}.roll-grid-line.bar{background:var(--tint-4);width:2px}.roll-lane{position:absolute;left:0;right:0;border-bottom:1px solid var(--line-soft)}.roll-lane.odd{background:var(--tint-1)}.roll-note{position:absolute;border-radius:3px;box-shadow:inset 0 0 0 1px var(--shade-2);cursor:grab;z-index:3}.roll-note:active{cursor:grabbing}.roll-note-resize{position:absolute;top:0;right:0;bottom:0;width:6px;cursor:ew-resize}.roll-note-pitch{position:absolute;left:3px;top:50%;transform:translateY(-50%);font-size:9px;font-weight:700;color:var(--on-track);text-shadow:0 1px 1px var(--shade-3);pointer-events:none;white-space:nowrap}.roll-playhead{position:absolute;top:0;bottom:0;left:0;width:2px;background:var(--accent);box-shadow:0 0 8px color-mix(in srgb,var(--accent) 80%,transparent);pointer-events:none;z-index:4;display:none;will-change:transform}#slicer-record-btn.recording{background:linear-gradient(135deg,var(--danger),color-mix(in srgb,var(--danger) 55%,var(--ink)));border-color:color-mix(in srgb,var(--danger) 60%,transparent);animation:record-pulse 1s ease-in-out infinite}#slicer-record-btn.counting-in{background:linear-gradient(135deg,var(--warn),color-mix(in srgb,var(--warn) 70%,var(--ink)));border-color:color-mix(in srgb,var(--warn) 60%,transparent)}@keyframes record-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--danger) 60%,transparent)}50%{box-shadow:0 0 0 6px transparent}}#rec-overlay{position:fixed;inset:0;background:var(--scrim);display:flex;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(4px)}.rec-overlay-inner{display:flex;flex-direction:column;align-items:center;gap:14px;padding:40px 60px;border-radius:16px;background:var(--surface-1);border:1px solid var(--line);box-shadow:var(--shadow-lg);min-width:260px}.rec-count{font-size:120px;font-weight:800;line-height:1;color:var(--text-1);text-shadow:0 4px 30px color-mix(in srgb,var(--danger) 50%,transparent);font-variant-numeric:tabular-nums}.rec-status{font-size:14px;font-weight:700;letter-spacing:.2em;color:var(--accent)}.rec-overlay-inner .rec-count{transition:color .15s}#rec-overlay.is-recording .rec-count{color:var(--danger);animation:rec-dot-pulse 1s ease-in-out infinite}#rec-overlay.is-recording .rec-status{color:var(--danger)}@keyframes rec-dot-pulse{0%,to{opacity:1}50%{opacity:.45}}.rec-time{font-size:20px;font-weight:600;color:var(--text-2);font-variant-numeric:tabular-nums;min-height:22px}.rec-waveform{display:none;width:320px;height:64px;background:var(--surface-well);border-radius:6px;border:1px solid var(--line)}#rec-overlay.is-recording .rec-waveform{display:block}.rec-buttons{display:flex;gap:10px;margin-top:10px}.rec-cancel,.rec-stop-save{padding:8px 20px;color:var(--text-1);border-radius:6px;font-size:12px;font-weight:600;cursor:pointer}.rec-cancel{background:var(--surface-3);border:1px solid var(--line)}.rec-cancel:hover{background:var(--surface-4)}.rec-stop-save{background:linear-gradient(135deg,var(--ok),color-mix(in srgb,var(--ok) 75%,var(--ink)));border:1px solid color-mix(in srgb,var(--ok) 60%,transparent);color:var(--on-ok)}.rec-stop-save:hover{filter:brightness(1.1)}
