.sequence-view .bank-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 15px;
  padding: 10px 0;
  border-top: 1px solid var(--line-soft);
  border-bottom: 1px solid var(--line-soft);
  color: var(--muted);
  font: 650 0.6rem/1 var(--mono);
  letter-spacing: 0.12em;
}
.sequence-view .bank-buttons { display: flex; gap: 5px; }
.sequence-view .bank-button { width: 40px; min-height: 34px; }
.sequence-view .bank-button[aria-pressed="true"] { color: #0b0e0e; border-color: var(--acid); background: var(--acid); }
.sequence-view .sequence-viewport {
  max-width: 100%;
  max-height: 520px;
  overflow: auto;
  padding: 2px 2px 16px;
  scroll-padding-top: 72px;
  scroll-behavior: smooth;
  scrollbar-color: #4e5755 #171b1c;
}
.sequence-view .sequence-grid { min-width: 636px; padding-bottom: 270px; }
.sequence-view .step-ruler,
.sequence-view .sequence-row {
  display: grid;
  grid-template-columns: 92px repeat(16, minmax(26px, 1fr));
  gap: 5px;
  align-items: center;
}
.sequence-view .step-ruler {
  position: sticky;
  z-index: 4;
  top: 0;
  margin-bottom: 8px;
  padding: 8px 0;
  color: var(--muted);
  background: #101415;
  box-shadow: 0 1px var(--line-soft);
  font: 600 0.53rem/1 var(--mono);
  text-align: center;
}
.sequence-view .step-ruler .beat-mark { color: var(--paper); }
.sequence-view .track-spacer { text-align: left; letter-spacing: 0.1em; }
.sequence-view .bank-section-heading {
  position: sticky;
  z-index: 3;
  top: 31px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 30px;
  margin: 4px 0 7px;
  padding: 0 9px;
  border-left: 2px solid var(--line);
  color: var(--muted);
  background: #111516;
  font: 700 0.58rem/1 var(--mono);
  letter-spacing: 0.12em;
}
.sequence-view .bank-section-heading span { font-size: 0.52rem; }
.sequence-view .bank-section-heading.is-active { border-left-color: var(--acid); color: var(--paper); background: #192015; }
.sequence-view .sequence-row { margin-bottom: 8px; border-radius: 4px; }
.sequence-view .sequence-row.is-selected { background: rgb(200 255 61 / 4%); box-shadow: inset 2px 0 var(--acid); }
.sequence-view .track-label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 0 8px;
  border: 0;
  border-left: 2px solid transparent;
  color: var(--muted);
  background: transparent;
  font: 700 0.65rem/1 var(--mono);
  cursor: pointer;
  text-align: left;
}
.sequence-view .track-label kbd { min-width: 24px; padding: 4px; border: 1px solid #4b5553; border-radius: 3px; text-align: center; }
.sequence-view .track-label[aria-pressed="true"] { color: var(--paper); border-left-color: var(--acid); }
.sequence-view .step-button {
  position: relative;
  aspect-ratio: 1;
  min-width: 26px;
  min-height: 26px;
  padding: 0;
  border: 1px solid #3e4645;
  border-radius: 4px;
  color: var(--paper);
  background: #1b2021;
  box-shadow: inset 0 1px rgb(255 255 255 / 5%), 0 2px 0 #060808;
  font: 750 0.54rem/1 var(--mono);
  cursor: pointer;
  text-align: center;
  transition: transform 80ms ease, background 80ms ease, border-color 80ms ease;
}
.sequence-view .step-button:nth-child(4n + 2) { margin-left: 4px; }
.sequence-view .step-button:hover { border-color: #77817f; }
.sequence-view .step-button.is-on { border-color: var(--acid-soft); background: var(--acid); box-shadow: 0 0 12px rgb(200 255 61 / 16%), 0 2px 0 #060808; }
.sequence-view .step-button.is-on::after { position: absolute; inset: 37%; border-radius: 50%; background: #172006; content: ""; }
.sequence-view .step-button.is-on[data-ratchet]:not([data-ratchet="1"])::after { display: none; }
.sequence-view .step-button.accent-0 { filter: brightness(0.58); }
.sequence-view .step-button.accent-2 { filter: brightness(1.18); box-shadow: 0 0 16px rgb(200 255 61 / 25%), 0 2px 0 #060808; }
.sequence-view .step-button[data-nudge="early"]::before,
.sequence-view .step-button[data-nudge="late"]::before {
  position: absolute;
  inset-block-end: 2px;
  color: #172006;
  font-size: 0.55rem;
}
.sequence-view .step-button[data-nudge="early"]::before { inset-inline-start: 2px; content: "‹"; }
.sequence-view .step-button[data-nudge="late"]::before { inset-inline-end: 2px; content: "›"; }
.sequence-view .step-button.is-playhead { transform: translateY(-3px); border-color: var(--record); box-shadow: 0 3px 0 var(--record), 0 0 13px rgb(255 95 86 / 35%); }
.sequence-view .step-inspector {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
  padding: 13px;
  border: 1px solid var(--line-soft);
}
.sequence-view .step-inspector legend { padding: 0 7px; color: var(--muted); font: 700 0.55rem/1 var(--mono); letter-spacing: 0.08em; }
.sequence-view .step-inspector label { display: grid; gap: 7px; min-width: 0; color: var(--muted); font: 700 0.5rem/1 var(--mono); }
.sequence-view .step-inspector output { color: var(--acid); }

.studio-sequence-view { margin-top: 18px; }
.studio-sequence-view .sequence-viewport { max-height: 620px; }
.studio-sequence-view .sequence-grid { padding-bottom: 430px; }

@media (min-width: 1800px) {
  .sequencer-panel.sequence-view .sequence-viewport { max-height: 360px; }
  .sequencer-panel.sequence-view .sequence-grid { padding-bottom: 64px; }
}

@media (max-width: 720px) {
  .sequence-view .bank-bar { align-items: flex-end; }
  .sequence-view .bank-button { width: 36px; }
  .sequence-view .sequence-viewport { max-height: 410px; }
  .sequence-view .sequence-row { margin-bottom: 5px; }
  .sequence-view .track-label { min-height: 32px; }
  .sequence-view .bank-section-heading { min-height: 26px; margin-bottom: 5px; }
  .sequence-view .step-inspector { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
