/* Ultrasonic Leak Detector — local overrides (Ultrasonic & Infrasound).
   Only genuinely-unique blocks live here; layout, typography, buttons,
   inputs, content-section, faq-* and related-tool-* come from the global
   design system. */

.uld-warn-note {
  max-width:640px;
  margin:var(--space-md) auto 0;
  padding:var(--space-sm) var(--space-md);
  border:1px solid rgba(255,179,0,.35);
  background:rgba(255,179,0,.07);
  border-radius:var(--radius-sm);
  color:var(--color-text);
  font-size:.92rem;
  line-height:1.55;
  text-align:left;
}
.uld-warn-note strong { color:var(--color-warning); }

.uld-toprow {
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:12px;
  justify-content:space-between;
}
.uld-device { flex:1 1 240px; min-width:200px; }
.uld-controls { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }

.uld-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);
}
.uld-select:focus { outline:1px solid var(--color-primary); }
.uld-select--narrow { width:auto; min-width:150px; }

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

.uld-optionrow {
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:18px;
  margin-top:var(--space-md);
}
.uld-opt { display:flex; flex-direction:column; gap:6px; max-width:280px; }
.uld-check {
  display:inline-flex; align-items:center; gap:8px;
  font-family:var(--font-mono); font-size:.85rem; color:var(--color-text);
  cursor:pointer;
}
.uld-check input { accent-color:var(--color-primary); width:15px; height:15px; }

/* Readout: confidence + stats */
.uld-readout {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr);
  gap:var(--space-md);
  margin-top:var(--space-md);
}

.uld-confidence {
  border:1px solid rgba(0,255,65,.2);
  border-radius:var(--radius-md);
  padding:var(--space-md);
  background:rgba(0,255,65,.02);
}
.uld-confidence__label {
  font-family:var(--font-mono);
  font-size:.74rem;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:var(--color-text-muted);
  margin-bottom:var(--space-sm);
}
.uld-tag {
  display:inline-block;
  margin-left:6px;
  padding:1px 7px;
  border:1px solid rgba(255,179,0,.45);
  border-radius:var(--radius-full);
  color:var(--color-warning);
  font-size:.64rem;
  letter-spacing:.04em;
}
.uld-confidence__meter {
  height:18px;
  background:rgba(255,255,255,.05);
  border:1px solid var(--color-border);
  border-radius:var(--radius-full);
  overflow:hidden;
}
.uld-confidence__fill {
  height:100%;
  width:0%;
  background:linear-gradient(90deg,var(--color-primary),#00e5ff);
  border-radius:var(--radius-full);
  transition:width .2s ease;
}
.uld-confidence__verdict {
  font-family:var(--font-display);
  font-size:1.35rem;
  margin-top:var(--space-sm);
  color:var(--color-text-muted);
}
.uld-confidence__verdict.is-low    { color:var(--color-text-muted); }
.uld-confidence__verdict.is-mid    { color:var(--color-warning); }
.uld-confidence__verdict.is-high   { color:var(--color-secondary); }
.uld-confidence__verdict.is-strong { color:var(--color-primary); }
.uld-confidence__verdict.is-idle   { color:var(--color-text-muted); }
.uld-confidence__sub {
  font-size:.78rem;
  color:var(--color-text-muted);
  line-height:1.45;
  margin-top:6px;
}

.uld-stats {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:var(--space-sm);
}
.uld-stat {
  border:1px solid var(--color-border);
  border-radius:var(--radius-md);
  padding:var(--space-sm);
  background:var(--color-surface);
  text-align:center;
}
.uld-stat__k {
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:var(--color-text-muted);
}
.uld-stat__v {
  font-family:var(--font-mono);
  font-size:1.1rem;
  font-weight:700;
  color:var(--color-primary);
  margin:4px 0 2px;
  word-break:break-word;
}
.uld-stat__u {
  font-size:.62rem;
  color:var(--color-text-muted);
}

.uld-canvas-wrap { margin-top:var(--space-md); }
.uld-canvas {
  display:block;
  width:100%;
  height:320px;
  background:#050a05;
  border:1px solid rgba(0,255,65,.2);
  border-radius:var(--radius-sm);
}
.uld-axis-note {
  margin-top:var(--space-sm);
  font-family:var(--font-mono);
  font-size:.74rem;
  color:var(--color-text-muted);
  text-align:center;
}

.uld-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:var(--space-md);
  margin-top:var(--space-md);
}

.uld-h2 {
  font-size:1.05rem;
  margin:0 0 var(--space-sm);
  color:var(--color-text-bright);
}
.uld-help {
  font-size:.84rem;
  color:var(--color-text-muted);
  margin:0 0 var(--space-md);
  line-height:1.5;
}

.uld-table {
  width:100%;
  border-collapse:collapse;
  font-family:var(--font-mono);
  font-size:.82rem;
}
.uld-table th {
  text-align:left;
  color:var(--color-text-muted);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:.68rem;
  padding:6px 8px;
  border-bottom:1px solid rgba(0,255,65,.2);
}
.uld-table td {
  padding:7px 8px;
  border-bottom:1px solid rgba(0,255,65,.08);
  color:var(--color-text);
}
.uld-table tbody tr td:nth-child(2) { color:var(--color-secondary); }
.uld-table tbody tr td:nth-child(4) { color:var(--color-primary); }
.uld-table tbody td.uld-empty {
  color:var(--color-text-muted);
  text-align:center;
  font-style:italic;
}

.uld-meta__row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:var(--space-sm);
  padding:7px 0;
  border-bottom:1px solid rgba(0,255,65,.08);
}
.uld-meta__k { font-size:.82rem; color:var(--color-text-muted); }
.uld-meta__v {
  font-family:var(--font-mono);
  font-size:.92rem;
  font-weight:700;
  color:var(--color-primary);
  text-align:right;
}

/* Reference signature table in the explanatory section */
.uld-ref-table {
  width:100%;
  border-collapse:collapse;
  font-size:.86rem;
  margin:var(--space-md) 0;
}
.uld-ref-table caption {
  text-align:left;
  color:var(--color-text-muted);
  font-size:.8rem;
  padding-bottom:var(--space-sm);
}
.uld-ref-table th,
.uld-ref-table td {
  text-align:left;
  padding:8px 10px;
  border-bottom:1px solid rgba(0,255,65,.12);
  vertical-align:top;
}
.uld-ref-table th {
  color:var(--color-primary);
  font-family:var(--font-mono);
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.uld-ref-table td:first-child {
  font-family:var(--font-mono);
  color:var(--color-secondary);
}

/* How-to-use ordered list */
.uld-steps {
  margin:0;
  padding-left:1.3em;
  line-height:1.6;
}
.uld-steps li { margin-bottom:var(--space-sm); color:var(--color-text); }
.uld-steps strong { color:var(--color-primary); }

@media (max-width:760px) {
  .uld-readout { grid-template-columns:1fr; }
  .uld-grid { grid-template-columns:1fr; }
  .uld-canvas { height:260px; }
  .uld-controls .btn { flex:1 1 auto; }
  .uld-opt { max-width:none; }
}
