/* Uptika legal pages: editorial neutral, Geist, one green accent. The only script is /consent.js (server.mjs injects it when marketing ids are configured). */
@font-face { font-family: Geist; src: url(/fonts/Geist-Variable.ttf); font-weight: 100 900; font-display: swap; }
:root { --fg: #1C2532; --fg-dim: #414A57; --muted: #6B7481; --line: #E3E9F2; --base: #F1F5FB; --sheet: #fff; --accent: #00A76B; --night: #0A1020; --warn: #B06F00; --warn-bg: #FFF4DF; color-scheme: light dark; }
@media (prefers-color-scheme: dark) { :root { --fg: #F6FAFF; --fg-dim: #D2DBE7; --muted: #9FA8B5; --line: #263042; --base: #0E1626; --sheet: #121A29; --accent: #3BEA9E; --warn: #E6A443; --warn-bg: #36280F; } }
* { box-sizing: border-box; }
body { margin: 0; background: var(--base); color: var(--fg); font: 16px/1.65 Geist, system-ui, -apple-system, sans-serif; -webkit-text-size-adjust: 100%; }
a { color: var(--accent); }
.top { background: var(--night); color: #F6FAFF; }
.top .w { display: flex; align-items: center; gap: 12px; height: 60px; }
.top .brand { display: inline-flex; align-items: center; gap: 9px; color: #F6FAFF; text-decoration: none; font-weight: 600; font-size: 18px; letter-spacing: -.01em; }
.top .r { margin-left: auto; display: flex; gap: 16px; font-size: 14px; } .top .r a { color: #C9D3E1; text-decoration: none; } .top .r a:hover { color: #fff; }
.w { max-width: 860px; margin: 0 auto; padding: 0 16px; }
main { padding: 34px 0 60px; }
.doc { background: var(--sheet); border: 1px solid var(--line); border-radius: 18px; padding: 34px 38px; }
.eyebrow { font: 500 12px ui-monospace, 'Geist Mono', monospace; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
h1 { font-size: 30px; line-height: 1.2; letter-spacing: -.02em; margin: 8px 0 4px; }
h2 { font-size: 19px; margin: 30px 0 8px; letter-spacing: -.01em; } h3 { font-size: 16px; margin: 20px 0 6px; }
p, li { color: var(--fg-dim); } ul, ol { padding-left: 22px; } li { margin: 4px 0; }
.upd { font: 13px ui-monospace, monospace; color: var(--muted); margin: 0 0 18px; }
table { width: 100%; border-collapse: collapse; margin: 10px 0; font-size: 14.5px; } th, td { text-align: left; vertical-align: top; padding: 9px 8px; border-bottom: 1px solid var(--line); } th { font-size: 12.5px; color: var(--muted); font-weight: 500; }
.box { border: 1px solid var(--line); background: var(--base); border-radius: 12px; padding: 14px 16px; margin: 12px 0; }
.box p { margin: 4px 0; }
.toc { display: flex; flex-wrap: wrap; gap: 8px 14px; font-size: 13.5px; margin: 26px 0 0; padding-top: 18px; border-top: 1px solid var(--line); } .toc a { color: var(--muted); } .toc a[aria-current] { color: var(--fg); font-weight: 600; text-decoration: none; }
footer { color: var(--muted); font-size: 13px; padding: 0 0 40px; }
/* Seller identity: kept hidden until the founder decides what to publish (see the TODO inside). */
.seller-identity[hidden] { display: none !important; }
@media (max-width: 600px) { .doc { padding: 22px 18px; border-radius: 14px; } h1 { font-size: 25px; } main { padding: 18px 0 40px; } .top .r a.hide-sm { display: none; } }
@media print { .top, .toc, footer { display: none; } body { background: #fff; } .doc { border: 0; padding: 0; } }
.ck-open { font: 600 14px/1 Geist, system-ui, sans-serif; height: 38px; padding: 0 16px; border-radius: 10px; border: 1px solid var(--line); background: var(--sheet); color: var(--fg); cursor: pointer; } .ck-open:hover { border-color: var(--accent); } .ck-open[hidden] { display: none; }
