/* Audio Latency Measurement Tool — local overrides (Card 3, Microphone Diagnostics) */

.al-note {
  max-width:760px;
  margin:var(--space-sm) auto 0;
  padding:var(--space-sm) var(--space-md);
  border:1px solid rgba(34,211,238,.35);
  background:rgba(34,211,238,.06);
  border-radius:var(--radius-sm);
  color:#67e8f9;
  font-size:.92rem;
  text-align:left;
  line-height:1.55;
}

kbd {
  font-family:var(--font-mono);
  font-size:.85em;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.25);
  border-bottom-width:2px;
  border-radius:4px;
  padding:1px 6px;
}

/* Segmented buttons */
.al-seg {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
}
.al-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:.86rem;
  font-weight:600;
  padding:8px 4px;
  border-radius:var(--radius-sm);
  cursor:pointer;
}
.al-seg-btn:hover { background:rgba(0,255,65,.1); }
.al-seg-btn[aria-checked="true"] {
  background:rgba(0,255,65,.2);
  border-color:var(--color-primary);
  color:var(--color-primary);
}

/* Status */
.al-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;
}
.al-status.is-live  { color:var(--color-primary); }
.al-status.is-error { color:#ef4444; }

/* Tap pad */
.al-pad {
  width:100%;
  margin-top:var(--space-md);
  min-height:120px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  background:rgba(0,255,65,.05);
  border:2px dashed rgba(0,255,65,.35);
  border-radius:var(--radius-md);
  color:var(--color-text);
  cursor:pointer;
  user-select:none;
  -webkit-user-select:none;
  transition:background .06s, border-color .06s, transform .04s;
}
.al-pad:disabled { opacity:.45; cursor:not-allowed; }
.al-pad__text {
  font-family:var(--font-display, Orbitron), var(--font-mono);
  font-size:2rem;
  font-weight:700;
  letter-spacing:.1em;
  color:var(--color-primary);
}
.al-pad__hint {
  font-family:var(--font-mono);
  font-size:.78rem;
  color:var(--color-text-dim);
}
.al-pad.is-hit {
  background:rgba(0,255,65,.22);
  border-color:var(--color-primary);
  transform:scale(.99);
}
.al-pad.is-beat {
  border-color:var(--color-secondary, #22d3ee);
}

/* Cells */
.al-cells {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
}
.al-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;
}
.al-cell__label {
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.06em;
  color:var(--color-text-dim);
  text-transform:uppercase;
}
.al-cell__value {
  font-family:var(--font-mono);
  font-size:1.05rem;
  font-weight:700;
  color:var(--color-primary);
  margin-top:4px;
}

/* Result */
.al-result {
  text-align:center;
  padding:var(--space-md);
  border-radius:var(--radius-md);
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.03);
}
.al-result__value {
  font-family:var(--font-mono);
  font-size:3.2rem;
  font-weight:700;
  line-height:1;
  color:var(--color-text);
}
.al-result__unit { font-size:1.2rem; color:var(--color-text-dim); margin-left:6px; }
.al-result__rating {
  font-family:var(--font-mono);
  font-size:.8rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--color-text-dim);
  margin-top:6px;
}
.al-result[data-rating="good"]    { border-color:rgba(0,255,65,.5);  background:rgba(0,255,65,.08); }
.al-result[data-rating="good"]    .al-result__value,
.al-result[data-rating="good"]    .al-result__rating { color:var(--color-primary); }
.al-result[data-rating="fair"]    { border-color:rgba(245,158,11,.5); background:rgba(245,158,11,.08); }
.al-result[data-rating="fair"]    .al-result__value,
.al-result[data-rating="fair"]    .al-result__rating { color:#fbbf24; }
.al-result[data-rating="poor"]    { border-color:rgba(239,68,68,.5);  background:rgba(239,68,68,.08); }
.al-result[data-rating="poor"]    .al-result__value,
.al-result[data-rating="poor"]    .al-result__rating { color:#fca5a5; }

/* Stats */
.al-stats {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
  margin-top:10px;
}
.al-stat {
  background:rgba(255,255,255,.03);
  border:1px solid rgba(0,255,65,.15);
  border-radius:var(--radius-sm);
  padding:8px;
  text-align:center;
}
.al-stat__label {
  display:block;
  font-family:var(--font-mono);
  font-size:.66rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--color-text-dim);
}
.al-stat__value {
  display:block;
  font-family:var(--font-mono);
  font-size:1.05rem;
  font-weight:700;
  color:var(--color-primary);
  margin-top:3px;
}

/* Scatter viz */
.al-scatter-viz { background:#020308; }
