/* The suite's legal pages (/privacy, /terms), served by gltic_common::legal
   at /legal/legal.css. A stylesheet, not a <style> block: a strict CSP
   (style-src 'self', gltic-auth) refuses inline styles, and the pages
   rendered unstyled there (walkthrough 2026-10-19).
   Colours: the shared theme's (static/css/citadel-theme.css; Tailwind does
   not build this file, so they are written out once here, as the variables
   below), by the measured AA text rules: on the white page and the gray-50
   bars, neutral 500 or darker and steel 600 links; in the dark scheme, on
   the gray-900 page and the gray-800 bars, neutral 300 / 400 and steel 300
   links. tests/scan/legal_css_palette.rs holds both schemes to the theme
   and to 4.5:1. */
:root {
    --legal-page: #FFFFFF;      /* white */
    --legal-bar: #F6F8FB;       /* gray-50: the top bar and the contact block */
    --legal-rule: #DDE3EB;      /* gray-200 */
    --legal-heading: #121826;   /* gray-900: h1, h2 */
    --legal-strong: #1B2232;    /* gray-800: h3, strong */
    --legal-text: #3E4453;      /* gray-700: body copy */
    --legal-muted: #5F6777;     /* gray-500: the date, the bar's note, the footer */
    --legal-link: #4B6886;      /* steel 600 (blue-600) */
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    color: var(--legal-text);
    background: var(--legal-page);
    line-height: 1.7;
    font-size: 16px;
}
.container {
    max-width: 800px;
    margin: 0 auto;
    padding: 48px 24px 80px;
}
h1 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--legal-heading);
}
.effective-date {
    font-size: 0.95rem;
    color: var(--legal-muted);
    margin-bottom: 40px;
}
h2 {
    font-size: 1.35rem;
    font-weight: 600;
    color: var(--legal-heading);
    margin-top: 40px;
    margin-bottom: 12px;
    padding-bottom: 6px;
    border-bottom: 1px solid var(--legal-rule);
}
h3 {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--legal-strong);
    margin-top: 24px;
    margin-bottom: 8px;
}
p {
    margin-bottom: 14px;
    color: var(--legal-text);
}
ul, ol {
    margin-bottom: 14px;
    padding-left: 24px;
}
li {
    margin-bottom: 6px;
    color: var(--legal-text);
}
strong { color: var(--legal-strong); }
a {
    color: var(--legal-link);
    text-decoration: none;
}
a:hover { text-decoration: underline; }
.company-block {
    background: var(--legal-bar);
    border: 1px solid var(--legal-rule);
    border-radius: 8px;
    padding: 20px 24px;
    margin-top: 12px;
    margin-bottom: 14px;
}
.company-block p { margin-bottom: 4px; }
.nav-bar {
    background: var(--legal-bar);
    border-bottom: 1px solid var(--legal-rule);
    padding: 12px 24px;
}
.nav-bar-inner {
    max-width: 800px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.nav-bar a { color: var(--legal-link); font-size: 0.875rem; font-weight: 500; text-decoration: none; }
.nav-bar a:hover { text-decoration: underline; }
.nav-bar span { color: var(--legal-muted); font-size: 0.875rem; }
.footer-bar {
    border-top: 1px solid var(--legal-rule);
    padding: 24px;
    text-align: center;
}
.footer-bar p { color: var(--legal-muted); font-size: 0.8rem; margin-bottom: 4px; }
.footer-bar a { color: var(--legal-link); text-decoration: none; font-size: 0.8rem; }
.footer-bar a:hover { text-decoration: underline; }
/* The contact block's address line, set apart from the postal address. */
.company-block .contact-gap { margin-top: 12px; }
/* Dark scheme: the same roles, the theme's dark shades, on screens only (a
   browser that keeps the dark scheme for printing would otherwise print
   light text on white paper). LAST, so it wins over the light values above
   (same specificity; the later rule wins). */
@media screen and (prefers-color-scheme: dark) {
    :root {
        --legal-page: #121826;      /* gray-900 */
        --legal-bar: #1B2232;       /* gray-800 */
        --legal-rule: #3E4453;      /* gray-700 */
        --legal-heading: #F6F8FB;   /* gray-50 */
        --legal-strong: #F6F8FB;    /* gray-50 */
        --legal-text: #CFD5E0;      /* gray-300 */
        --legal-muted: #A8AFBF;     /* gray-400 */
        --legal-link: #8CABC9;      /* steel 300 (blue-300) */
    }
}
