/* Mixer console for Lesson 11 */
.console-wrap {
  background: linear-gradient(180deg, #0c0c12, #09090d);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 0.55rem;
  overflow-x: auto;
  box-shadow: inset 0 2px 8px rgba(0,0,0,0.6);
}
.console {
  display: flex;
  gap: 0.4rem;
  min-width: max-content;
  align-items: stretch;
}
.controls-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.6rem;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.legend {
  display: flex;
  gap: 0.85rem;
  font-size: 0.7rem;
  color: var(--text-secondary);
  align-items: center;
}
.dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--accent);
  display: inline-block;
  margin-right: 0.25rem;
  box-shadow: 0 0 4px var(--accent);
}
.dot.grey {
  background: var(--text-muted);
  box-shadow: none;
}

.channel-strip {
  width: 88px;
  background: linear-gradient(180deg, #16161f, #0e0e14);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 10px;
  padding: 0.35rem 0.2rem 0.45rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.18rem;
  position: relative;
}
.channel-strip::before {
  content: '';
  position: absolute;
  top: 0;
  left: 5px;
  right: 5px;
  height: 2px;
  border-radius: 0 0 2px 2px;
  background: var(--ch-color, var(--accent));
  box-shadow: 0 0 7px var(--ch-color, var(--accent));
  opacity: 0.8;
}
.strip-label {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 0.58rem;
  font-weight: 700;
  color: var(--text-secondary);
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 0.04em;
  margin-bottom: 0.05rem;
}
.channel-strip .control {
  width: 100%;
  align-items: center;
  gap: 0.05rem;
}
.channel-strip .control label,
.master-strip .control label {
  font-size: 0.45rem;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  text-align: center;
}

/* Knob + value readout layout */
.knob-and-readout {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.2rem;
  width: 100%;
}
.knob-readout {
  background: rgba(5,5,8,0.9);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 4px;
  padding: 0.1rem 0.18rem;
  font-size: 0.5rem;
  color: var(--ch-color, var(--accent));
  min-width: 22px;
  text-align: center;
  font-family: 'Space Grotesk', monospace;
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.7);
}
.control-row {
  display: flex;
  gap: 0.15rem;
  width: 100%;
}
.control-row .control {
  width: 50%;
}

/* Scale down shared knobs/faders inside the mixer */
.channel-strip .ma-knob-wrap.ma-knob-sm,
.master-strip .ma-knob-wrap.ma-knob-sm {
  --k: 0.32;
}
.channel-strip .ma-knob-value,
.master-strip .ma-knob-value {
  display: none;
}
.channel-strip .ma-fader-value,
.master-strip .ma-fader-value {
  display: none;
}
.channel-strip .ma-fader-wrap.ma-fader-short,
.master-strip .ma-fader-wrap.ma-fader-short {
  --fh: 70px;
}
.channel-strip .ma-fader-wrap.ma-fader-tall,
.master-strip .ma-fader-wrap.ma-fader-tall {
  --fh: 170px;
}

.kill-row {
  display: flex;
  gap: 0.15rem;
  justify-content: center;
  margin-top: -0.02rem;
  margin-bottom: 0.05rem;
}
.kill-btn {
  background: #1a1a25;
  border: 1px solid rgba(255,255,255,0.08);
  color: var(--text-muted);
  font-size: 0.45rem;
  font-weight: 700;
  padding: 0.1rem 0.18rem;
  border-radius: 3px;
  cursor: pointer;
  transition: all 0.15s;
}
.kill-btn.active {
  background: #ff4757;
  color: #fff;
  border-color: #ff4757;
  box-shadow: 0 0 5px rgba(255,71,87,0.35);
}

.meter-wrap {
  width: 12px;
  height: 55px;
  background: #050508;
  border-radius: 6px;
  position: relative;
  overflow: hidden;
  margin: 0.15rem 0;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.9);
}
.meter {
  position: absolute;
  inset: 0;
}
.meter-bar {
  position: absolute;
  bottom: 0;
  left: 2px;
  right: 2px;
  border-radius: 2px;
  background: linear-gradient(180deg, #ff4757 0%, #ffaa00 40%, #00d4aa 90%);
  box-shadow: 0 0 4px rgba(0,212,170,0.25);
  height: 0%;
  transition: height 0.05s linear;
}
.meter-bar.clip {
  background: #ff4757;
  box-shadow: 0 0 5px #ff4757;
}

.fader-control {
  margin-top: auto;
  padding-top: 0.1rem;
}

.master-strip {
  width: 104px;
  background: linear-gradient(180deg, #1c1c28, #111118);
  border-color: rgba(255,255,255,0.1);
}
.master-strip::before {
  background: linear-gradient(90deg, var(--accent), var(--gradient-end));
  box-shadow: 0 0 9px rgba(0,212,170,0.3);
}
.master-strip .knob-readout {
  color: var(--accent);
}
.fx-toggles {
  display: flex;
  gap: 0.2rem;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0.05rem 0 0.15rem;
}
.fx-toggle {
  background: #1a1a25;
  border: 1px solid rgba(255,255,255,0.08);
  color: var(--text-muted);
  font-size: 0.48rem;
  font-weight: 600;
  padding: 0.12rem 0.32rem;
  border-radius: 999px;
  cursor: pointer;
  transition: all 0.15s;
}
.fx-toggle.active {
  background: rgba(0,212,170,0.15);
  color: var(--accent);
  border-color: var(--accent);
}

@media (max-width: 700px) {
  .channel-strip { width: 80px; }
  .master-strip { width: 94px; }
}
