/* Appliance Noise Frequency Identifier — local overrides (Card 14, Microphone Diagnostics) */

.anf-note,
.anf-privacy {
  max-width:760px;
  margin:var(--space-sm) auto 0;
  padding:var(--space-sm) var(--space-md);
  border-radius:var(--radius-sm);
  font-size:.92rem;
  text-align:left;
  line-height:1.55;
}
.anf-note {
  border:1px solid rgba(245,158,11,.4);
  background:rgba(245,158,11,.07);
  color:#fbbf24;
  margin-top:var(--space-md);
}
.anf-note strong { color:#fde68a; }
.anf-privacy {
  border:1px solid rgba(0,255,65,.3);
  background:rgba(0,255,65,.06);
  color:var(--color-primary);
}

.anf-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);
}
.anf-select:focus { outline:1px solid var(--color-primary); }

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

/* Result */
.anf-result {
  text-align:center;
  padding:var(--space-md);
  border-radius:var(--radius-md);
  border:1px solid rgba(0,255,65,.25);
  background:rgba(0,255,65,.05);
}
.anf-result__freq {
  font-family:var(--font-mono);
  font-size:2.6rem;
  font-weight:700;
  line-height:1;
  color:var(--color-primary);
}
.anf-result__label {
  font-family:var(--font-mono);
  font-size:1rem;
  font-weight:700;
  color:var(--color-text);
  margin-top:8px;
}
.anf-result__hint {
  font-size:.88rem;
  color:var(--color-text-dim);
  margin-top:6px;
  line-height:1.45;
  min-height:1em;
}

/* Peaks table */
.anf-peaks { display:flex;flex-direction:column;gap:6px; }
.anf-peak {
  display:grid;
  grid-template-columns:1fr 0.7fr 1.6fr;
  gap:8px;
  align-items:center;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(0,255,65,.15);
  border-radius:var(--radius-sm);
  padding:8px 10px;
  font-family:var(--font-mono);
  font-size:.82rem;
}
.anf-peak--head {
  background:transparent;border:none;padding:2px 10px;
  color:var(--color-text-dim);font-size:.66rem;letter-spacing:.05em;text-transform:uppercase;
}
.anf-peak__f { color:var(--color-primary);font-weight:700; }
.anf-peak__db { color:var(--color-text-dim); }
.anf-peak__src { color:var(--color-text); }
.anf-peak-empty {
  font-family:var(--font-mono);font-size:.82rem;color:var(--color-text-dim);
  text-align:center;padding:var(--space-md);
}

.anf-spec-viz { background:#020308; }
