/* Extracted from Views/PublicPages/Index.cshtml - audit finding L3/L6 (inline <style> block) */
:root {
    --qs-navy: var(--qs-primary);
    --qs-gold: var(--qs-warning-solid);
    --qs-text: var(--qs-text);
    --qs-muted: var(--qs-text-muted);
    --qs-border: var(--qs-primary-subtle);
}
* { box-sizing: border-box; }
body {
    margin: 0;
    padding: 0;
    background: var(--qs-bg);
    color: var(--qs-text);
    font-family: 'Segoe UI', Tahoma, Arial, sans-serif;
    line-height: 1.7;
}
.qs-public-topbar {
    background: var(--qs-surface);
    border-bottom: 1px solid var(--qs-border);
    padding: 14px var(--qs-space-5);
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: sticky;
    top: 0;
    z-index: 10;
}
.qs-public-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
    font-size: 1.15rem;
    color: var(--qs-navy);
    text-decoration: none;
}
.qs-public-brand-mark {
    width: 34px;
    height: 34px;
    border-radius: var(--qs-radius-md);
    background: linear-gradient(135deg, var(--qs-navy), var(--qs-primary));
    color: var(--qs-inverse-fg);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    font-weight: 800;
}
.qs-lang-switch {
    display: flex;
    gap: 6px;
}
.qs-lang-switch a {
    padding: 6px 14px;
    border-radius: var(--qs-radius-pill);
    font-size: .8rem;
    font-weight: 600;
    text-decoration: none;
    border: 1px solid var(--qs-border);
    color: var(--qs-muted);
}
.qs-lang-switch a.active {
    background: var(--qs-navy);
    border-color: var(--qs-navy);
    color: var(--qs-inverse-fg);
}
.qs-public-wrap {
    max-width: 860px;
    margin: 0 auto;
    padding: 40px 20px 80px;
}
.qs-public-card {
    background: var(--qs-surface);
    border: 1px solid var(--qs-border);
    border-radius: 14px;
    box-shadow: 0 8px 30px rgba(var(--qs-primary-rgb), 0.06);
    padding: var(--qs-space-7) 56px;
}
@media (max-width: 640px) {
    .qs-public-card { padding: 28px 20px; }
}

/* ---- Legal document content styling ---- */
.legal-doc h1 { font-size: 2rem; text-align: center; color: var(--qs-navy); margin: 0 0 var(--qs-space-1); }
.legal-cover { text-align: center; padding-bottom: 28px; margin-bottom: var(--qs-space-6); border-bottom: 2px solid var(--qs-border); }
.legal-subtitle { font-size: 1.35rem; color: var(--qs-gold); font-weight: 700; margin: 6px 0 2px; }
.legal-subtitle-ar { font-size: 1.05rem; color: var(--qs-muted); margin: 0 0 14px; }
.legal-tagline {
    display: inline-block;
    background: var(--qs-navy);
    color: var(--qs-inverse-fg) !important;
    font-weight: 600;
    font-size: .85rem;
    padding: 6px var(--qs-space-4);
    border-radius: var(--qs-radius-pill);
    margin: 10px 0 var(--qs-space-4);
}
.legal-cover p { margin: var(--qs-space-1) 0; color: var(--qs-text); font-size: .95rem; }
.legal-meta { color: var(--qs-muted) !important; font-size: .8rem !important; }
.legal-footer { text-align: center; color: var(--qs-muted); font-size: .8rem; margin-top: 40px; padding-top: 20px; border-top: 1px solid var(--qs-border); }

.legal-doc h2 {
    font-size: 1.15rem;
    color: var(--qs-navy);
    margin: 36px 0 14px;
    padding-bottom: var(--qs-space-2);
    border-bottom: 2px solid var(--qs-gold);
}
.legal-doc h3 {
    font-size: 1.05rem;
    color: var(--qs-navy);
    margin: 28px 0 10px;
}
.legal-doc h4 {
    font-size: .95rem;
    color: var(--qs-text);
    font-weight: 700;
    margin: 18px 0 6px;
}
.legal-doc p { margin: 0 0 var(--qs-space-3); font-size: .95rem; }
.legal-doc ul, .legal-doc ol { margin: 0 0 14px; padding-inline-start: 22px; }
.legal-doc li { margin-bottom: 6px; font-size: .95rem; }
.legal-notice {
    background: var(--qs-warning-subtle-bg);
    border: 1px solid var(--qs-warning-subtle-fg);
    border-radius: var(--qs-radius-md);
    padding: 10px var(--qs-space-4);
    font-weight: 600;
    font-size: .9rem;
    color: var(--qs-warning-strong);
}
.qs-public-updated {
    text-align: center;
    color: var(--qs-muted);
    font-size: .8rem;
    margin-top: var(--qs-space-5);
}
