/* =============================================================================
   Listener report form (public) — extends the main site theme.
   ========================================================================== */

.report-page{ padding-top:1rem; }
.report-wrap{ max-width:720px; margin:0 auto; }
.report-kicker{
  font-family:var(--mono); letter-spacing:.2em; text-transform:uppercase;
  font-size:.75rem; color:var(--cyan); margin:0 0 .5rem;
}

.report-alert{
  padding:1rem 1.15rem; border-radius:var(--radius-sm); margin:1.2rem 0 1.6rem;
  border:1px solid var(--line);
}
.report-alert--ok{ background:rgba(56,225,214,.08); border-color:rgba(56,225,214,.35); color:#c8faf6; }
.report-alert--error{ background:rgba(255,107,139,.08); border-color:rgba(255,107,139,.35); color:#ffc8d4; }
.report-alert--warn{ background:rgba(245,166,35,.08); border-color:rgba(245,166,35,.35); color:#ffe4b8; }

.report-form{ display:flex; flex-direction:column; gap:1.1rem; margin-top:1.5rem; }
.report-form__row{ display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
@media (max-width:640px){ .report-form__row{ grid-template-columns:1fr; } }

.report-field{ display:flex; flex-direction:column; gap:.35rem; }
.report-field span{ font-size:.88rem; color:var(--muted); font-weight:600; }
.report-field em{ font-weight:400; font-style:normal; opacity:.85; }
.report-field input,
.report-field select,
.report-field textarea{
  font:inherit; color:var(--ink); background:var(--panel);
  border:1px solid var(--line); border-radius:var(--radius-sm);
  padding:.65rem .85rem; width:100%;
}
.report-field input:focus,
.report-field select:focus,
.report-field textarea:focus{
  outline:none; border-color:var(--cyan); box-shadow:0 0 0 3px rgba(56,225,214,.15);
}
.report-field textarea{ min-height:180px; resize:vertical; }

/* Grouped optional radio/signal-report fields. Uses the same field styles as
   the rest of the form; the fieldset just visually bundles them together. */
.report-fieldset{
  border:1px solid var(--line); border-radius:var(--radius-sm);
  padding:1.1rem 1.15rem 1.25rem; margin:0; display:flex; flex-direction:column; gap:1.1rem;
}
.report-fieldset legend{
  font-family:var(--mono); letter-spacing:.12em; text-transform:uppercase;
  font-size:.72rem; color:var(--cyan); padding:0 .4rem;
}
.report-fieldset legend em{ font-style:normal; text-transform:none; letter-spacing:0; color:var(--muted); }

.report-check{
  display:flex; align-items:flex-start; gap:.65rem; font-size:.92rem; color:var(--muted);
  cursor:pointer;
}
.report-check input{ margin-top:.25rem; accent-color:var(--cyan); }

.report-hp{
  position:absolute; left:-9999px; width:1px; height:1px; opacity:0;
}
