/* Sound Input Monitor — local overrides (Card 9, Microphone Diagnostics) */

.sim-privacy {
  max-width:760px;
  margin:var(--space-md) auto 0;
  padding:var(--space-sm) var(--space-md);
  border:1px solid rgba(0,255,65,.3);
  background:rgba(0,255,65,.06);
  border-radius:var(--radius-sm);
  color:var(--color-primary);
  font-size:.92rem;
  text-align:left;
}

.sim-toprow {
  display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;justify-content:space-between;
}
.sim-device { flex:1 1 240px; }
.sim-select {
  width:100%;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(0,255,65,.25);
  color:var(--color-text);
  font-family:var(--font-mono);
  font-size:.9rem;
  padding:9px 10px;
  border-radius:var(--radius-sm);
}
.sim-select:focus { outline:1px solid var(--color-primary); }
.sim-controls { display:flex;flex-wrap:wrap;align-items:center;gap:8px; }

.sim-seg { display:flex;gap:6px; }
.sim-seg-btn {
  background:rgba(0,255,65,.05);
  border:1px solid rgba(0,255,65,.25);
  color:var(--color-text);
  font-family:var(--font-mono);
  font-size:.82rem;
  font-weight:600;
  padding:8px 12px;
  border-radius:var(--radius-sm);
  cursor:pointer;
}
.sim-seg-btn:hover { background:rgba(0,255,65,.1); }
.sim-seg-btn[aria-checked="true"] {
  background:rgba(0,255,65,.2);
  border-color:var(--color-primary);
  color:var(--color-primary);
}

.sim-status {
  margin-top:var(--space-sm);
  font-family:var(--font-mono);
  font-size:.85rem;
  color:var(--color-text-dim);
  min-height:1.4em;
}
.sim-status.is-live  { color:var(--color-primary); }
.sim-status.is-error { color:#ef4444; }

/* live meter */
.sim-meter {
  position:relative;
  height:26px;
  margin-top:var(--space-md);
  background:linear-gradient(90deg,#15803d 0%,var(--color-primary) 70%,var(--color-primary) 87.5%,#fbbf24 87.5%,#fbbf24 97.9%,#ef4444 97.9%,#ef4444 100%);
  border:1px solid rgba(255,255,255,.18);
  border-radius:var(--radius-sm);
  overflow:hidden;
}
.sim-meter__fill {
  position:absolute;top:0;bottom:0;right:0;left:0%;
  background:#020308;
  transition:left .04s linear;
}
.sim-meter__scale {
  position:absolute;left:0;right:0;bottom:1px;
  display:flex;justify-content:space-between;padding:0 4px;
  font-family:var(--font-mono);font-size:.6rem;color:rgba(255,255,255,.55);
  pointer-events:none;
}

/* cells */
.sim-cells {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:8px;
  margin-top:var(--space-md);
}
.sim-cell {
  background:rgba(255,255,255,.03);
  border:1px solid rgba(0,255,65,.15);
  border-radius:var(--radius-sm);
  padding:10px;
  text-align:center;
}
.sim-cell__label {
  font-family:var(--font-mono);font-size:.62rem;letter-spacing:.04em;
  color:var(--color-text-dim);text-transform:uppercase;
}
.sim-cell__value {
  font-family:var(--font-mono);font-size:1.0rem;font-weight:700;
  color:var(--color-primary);margin-top:4px;
}
.sim-cell--clip[data-on="true"] { border-color:rgba(239,68,68,.6); background:rgba(239,68,68,.12); }
.sim-cell--clip[data-on="true"] .sim-cell__value { color:#ef4444; }

.sim-actions {
  display:flex;flex-wrap:wrap;gap:8px;
  margin-top:var(--space-md);
}
.sim-actions .btn { flex:1 1 200px; }

.sim-monitor-warn {
  margin-top:8px;
  padding:8px 10px;
  border:1px solid rgba(245,158,11,.45);
  background:rgba(245,158,11,.08);
  border-radius:var(--radius-sm);
  color:#fbbf24;
}

.sim-hist-viz { background:#020308; }

@media (max-width:640px) {
  .sim-cells { grid-template-columns:repeat(2,1fr); }
  .sim-controls { width:100%; }
}
