/*
 * The legal pages are plain static files, not part of the single-page app.
 *
 * ⚠ ON PURPOSE. PayPal, a bank in a dispute and a customer reading before they
 *   pay all need a URL that opens the document directly, with no JavaScript and
 *   no session. A React route inside the SPA would have neither. These files
 *   live in `public/`, so nginx serves them as they are.
 *
 * The tokens are the app's own brand values, written out rather than imported:
 * a stylesheet that pulls in Tailwind would make a legal page depend on a build.
 */

:root {
    color-scheme: light dark;
    --bkg: #f9fafb;
    --surface: #ffffff;
    --border: #e5e7eb;
    --text: #111827;
    --muted: #6b7280;
    --primary: #0891b2;
}

@media (prefers-color-scheme: dark) {
    :root {
        --bkg: #030712;
        --surface: #111827;
        --border: #1f2937;
        --text: #f3f4f6;
        --muted: #9ca3af;
        --primary: #22d3ee;
    }
}

* { box-sizing: border-box; }

body {
    margin: 0;
    padding: 0 16px 80px;
    background: var(--bkg);
    color: var(--text);
    font: 16px/1.7 Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
}

.wrap { max-width: 46rem; margin: 0 auto; }

header.top {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 24px 0;
    border-bottom: 1px solid var(--border);
    margin-bottom: 40px;
}

.logo {
    font: italic 900 22px/1 Orbitron, Inter, system-ui, sans-serif;
    transform: skewX(-12deg);
    text-decoration: none;
    color: var(--text);
}
.logo span { color: var(--primary); }

.back { color: var(--primary); text-decoration: none; font-size: 14px; font-weight: 600; }
.back:hover { text-decoration: underline; }

h1 { font-size: 2rem; line-height: 1.2; margin: 0 0 8px; }
.updated { color: var(--muted); font-size: 14px; margin: 0 0 32px; }

h2 {
    font-size: 1.05rem;
    margin: 40px 0 12px;
    padding-top: 8px;
    scroll-margin-top: 16px;
}
h2 .n { color: var(--primary); font-variant-numeric: tabular-nums; margin-right: 8px; }

p, li { color: var(--text); }
ul { padding-left: 20px; }
li { margin-bottom: 8px; }

a { color: var(--primary); }

.lead {
    border-left: 3px solid var(--primary);
    padding: 4px 0 4px 16px;
    margin: 0 0 32px;
    font-size: 1.05rem;
}

.callout {
    border: 1px solid var(--border);
    background: var(--surface);
    border-radius: 12px;
    padding: 16px 20px;
    margin: 24px 0;
}
.callout strong { color: var(--primary); }

/* The prescribed hypothetical-performance disclosure. It is quoted verbatim, so
   it is set apart rather than woven into the prose. */
.regulatory {
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 16px 20px;
    margin: 24px 0;
    font-size: 13px;
    line-height: 1.6;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: 0.01em;
}

table { width: 100%; border-collapse: collapse; margin: 16px 0; font-size: 15px; }
th, td { border: 1px solid var(--border); padding: 8px 12px; text-align: left; vertical-align: top; }
th { background: var(--surface); font-weight: 600; }

.toc { border: 1px solid var(--border); background: var(--surface); border-radius: 12px; padding: 16px 20px; margin-bottom: 40px; }
.toc p { margin: 0 0 8px; font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); }
.toc ol { margin: 0; padding-left: 20px; columns: 2; column-gap: 32px; font-size: 14px; }
@media (max-width: 640px) { .toc ol { columns: 1; } }

footer.bottom { margin-top: 56px; padding-top: 24px; border-top: 1px solid var(--border); color: var(--muted); font-size: 14px; }
footer.bottom a { font-weight: 600; }
