/*
 * Legal Pages — Theme-Agnostic Styles
 * Forces light background + dark text on all legal pages,
 * completely ignoring the tenant theme.
 */

/* Override entire page background regardless of theme */
html, body, main {
    background-color: #ffffff !important;
    color: #212529 !important;
}

/* ── Base ──────────────────────────────────────────── */
.legal-page {
    color: #212529 !important;
    font-size: 1rem;
    line-height: 1.6;
}

/* ── Headings ──────────────────────────────────────── */
.legal-page h1,
.legal-page h2,
.legal-page h3,
.legal-page h4,
.legal-page h5,
.legal-page h6 {
    color: #212529 !important;
    font-weight: 600;
}

.legal-page h1 {
    font-size: 2rem;
    margin-bottom: 1.5rem;
}

.legal-page h2 {
    font-size: 1.5rem;
    margin-top: 2.5rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid #dee2e6;
    padding-bottom: 0.4rem;
}

.legal-page h3 {
    font-size: 1.15rem;
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
}

.legal-page h4 {
    font-size: 1rem;
    margin-top: 1rem;
    margin-bottom: 0.5rem;
}

/* ── Body text ─────────────────────────────────────── */
.legal-page p,
.legal-page ul,
.legal-page ol,
.legal-page li,
.legal-page small,
.legal-page label {
    color: #212529 !important;
    opacity: 1;
    line-height: 1.7;
}

.legal-page p   { margin-bottom: 1rem; }
.legal-page ul,
.legal-page ol  { margin-bottom: 1rem; }
.legal-page li  { margin-bottom: 0.4rem; }

.legal-page strong {
    color: #212529 !important;
    font-weight: 600;
}

.legal-page small,
.legal-page .text-muted {
    color: #6c757d !important;
}

/* ── Links ─────────────────────────────────────────── */
.legal-page a            { color: #0d6efd; text-decoration: underline; }
.legal-page a:hover      { color: #0a58ca; }

/* ── Info / highlight boxes (inline-styled divs) ───── */
/* Inline-styled boxes use hardcoded light bg colors already;
   we just ensure text inside is always dark. */
.legal-page [style] p,
.legal-page [style] strong,
.legal-page [style] ul,
.legal-page [style] li {
    color: #212529 !important;
}

/* .info-box class used in content-removal.php */
.legal-page .info-box {
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    padding: 1.25rem;
    border-radius: 6px;
    margin-bottom: 1rem;
    color: #212529;
}

/* ── Bootstrap Cards ───────────────────────────────── */
.legal-page .card {
    background-color: #f8f9fa !important;
    border: 1px solid #dee2e6 !important;
    color: #212529 !important;
}

.legal-page .card-body {
    background-color: #f8f9fa !important;
    color: #212529 !important;
}

/* Neutralise all coloured card headers (bg-success, bg-danger, bg-warning, etc.) */
.legal-page .card-header,
.legal-page .card-header.bg-success,
.legal-page .card-header.bg-danger,
.legal-page .card-header.bg-warning,
.legal-page .card-header.bg-info,
.legal-page .card-header.bg-dark,
.legal-page .card-header.bg-primary {
    background-color: #e9ecef !important;
    color: #212529 !important;
    border-bottom: 1px solid #dee2e6 !important;
}

.legal-page .card-header h5,
.legal-page .card-header h6 {
    color: #212529 !important;
}

/* ── Bootstrap Alerts ──────────────────────────────── */
.legal-page .alert,
.legal-page .alert-success,
.legal-page .alert-danger,
.legal-page .alert-warning,
.legal-page .alert-info {
    background-color: #f8f9fa !important;
    border-color: #dee2e6 !important;
    color: #212529 !important;
}

/* ── Tables ────────────────────────────────────────── */
.legal-page .table,
.legal-page .table th,
.legal-page .table td {
    color: #212529 !important;
    border-color: #dee2e6 !important;
}

.legal-page .table th {
    background-color: #f8f9fa !important;
    font-weight: 600;
}

.legal-page .table td {
    background-color: transparent !important;
}

.legal-page .table-striped > tbody > tr:nth-of-type(odd) > * {
    background-color: rgba(0, 0, 0, 0.03) !important;
    color: #212529 !important;
}

/* ── Code ──────────────────────────────────────────── */
.legal-page code {
    color: #d63384;
    background-color: #f8f9fa;
    padding: 0.15em 0.4em;
    border-radius: 3px;
    font-size: 0.9em;
}

/* ── HR ────────────────────────────────────────────── */
.legal-page hr {
    border-color: #dee2e6;
    opacity: 1;
}

/* ── Form controls (content-removal.php) ───────────── */
.legal-page .form-control,
.legal-page .form-select,
.legal-page textarea.form-control {
    background-color: #ffffff !important;
    color: #212529 !important;
    border-color: #ced4da !important;
}

.legal-page .form-control:focus,
.legal-page .form-select:focus {
    background-color: #ffffff !important;
    color: #212529 !important;
    border-color: #86b7fe !important;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25) !important;
}

.legal-page .form-label,
.legal-page .fw-semibold,
.legal-page .form-check-label {
    color: #212529 !important;
}

.legal-page .form-check-input {
    border-color: #ced4da;
}

/* ── Footer (site footer is kept as-is, only .legal-page overridden) */
