/* ═══════════════════════════════════════════════════════════════════════════
   modals-v4.css — contrast fixes for the search/results modals found by the
   2026-09-14 modal audit (owner: "texts in modals looking black"). Loaded
   after main.css / results.css so these win on source order.
   ═══════════════════════════════════════════════════════════════════════════ */

/* queued modal: the "View Results Page" link is an <a>, so `.rv-scope a` painted
   its text brand-purple on the brand-purple button */
a.vt-queued-btn--results, a.vt-queued-btn--results:hover { color: #fff !important; }

/* one-time-search modal footnote used a slate grey off the palette */
#vt-ots-secure { color: var(--rv-body); }

/* results-page action modals (report / challenge / consent): ghost buttons */
.vr-amod-btn--ghost { background: var(--rv-surface-2) !important; color: var(--rv-ink-soft) !important; border: 1px solid var(--rv-border) !important; }
.vr-amod-btn--ghost:hover:not(:disabled) { background: var(--rv-surface-4) !important; }
[data-theme="dark"] .vr-amod-btn--ghost { background: var(--rv-surface-3) !important; color: var(--rv-ink-soft) !important; border-color: var(--rv-border) !important; }
[data-theme="dark"] .vr-amod-btn--ghost:hover:not(:disabled) { background: var(--rv-border) !important; }

/* dark mode: --rv-danger is a TEXT red (#f87171) — too pale behind white text.
   Headers and destructive buttons use a deeper red instead. */
[data-theme="dark"] #vt-alert-box[data-t="error"] #vt-alert-header,
[data-theme="dark"] #vt-alert-box:not([data-t]) #vt-alert-header { --vt-alert-accent: #dc2626; }   /* error type only; info/warning keep their accents */
[data-theme="dark"] .vt-cancel-confirm-btn--yes { background: #dc2626 !important; color: #fff !important; }
