/* Integritetspolicyn och villkoren: en läsbar sida på samma marmor som appen. */
@font-face { font-family: "Hanken Grotesk"; src: url("fonts/hanken-grotesk.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "Cinzel"; src: url("fonts/cinzel.woff2") format("woff2"); font-weight: 400 900; size-adjust: 78%; font-display: swap; }
@font-face { font-family: "Cinzel"; src: url("fonts/cinzel.woff2") format("woff2"); font-weight: 400 900; font-style: italic; size-adjust: 78%; font-display: swap; }
:root {
  color-scheme: light;
  --background: #f4f1ea; --surface: #fbf9f4; --text-primary: #11121c; --text-secondary: #5d5a63; --text-tertiary: #6b6872;
  --border: #e2dcd0; --accent: #2b3fe0; --built-text: #8a5d00;
  --font: "Hanken Grotesk", system-ui, sans-serif; --display: "Cinzel", Georgia, serif;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --background: #0d0e18; --surface: #171927; --text-primary: #f4f1ea; --text-secondary: #a9a7b8; --text-tertiary: #8e8ca0;
    --border: #2e3046; --accent: #7c8cff; --built-text: #f0b429;
  }
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --background: #0d0e18; --surface: #171927; --text-primary: #f4f1ea; --text-secondary: #a9a7b8; --text-tertiary: #8e8ca0;
  --border: #2e3046; --accent: #7c8cff; --built-text: #f0b429;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--background); color: var(--text-primary); font: 400 17px/1.65 var(--font); -webkit-text-size-adjust: 100%; }
main { max-width: 680px; margin: 0 auto; padding: 40px 20px 80px; }
.back { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; color: var(--accent); font-weight: 700; font-size: 15px; text-decoration: none; }
.eyebrow { margin: 32px 0 12px; font-size: 13px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: var(--built-text); }
h1 { margin: 0; font: 400 clamp(44px, 12vw, 64px)/0.98 var(--display); letter-spacing: -1px; }
h1 em { font-style: italic; }
.lead { margin: 20px 0 8px; font-size: 19px; color: var(--text-secondary); }
.updated { margin: 0 0 32px; font-size: 14px; color: var(--text-tertiary); }
h2 { margin: 40px 0 8px; padding-top: 16px; border-top: 1px solid var(--border); font: 400 28px/1.15 var(--display); }
h3 { margin: 24px 0 4px; font-size: 17px; }
p, li { color: var(--text-primary); }
ul { padding-left: 1.2em; }
li + li { margin-top: 6px; }
li::marker { color: var(--built-text); }
a { color: var(--accent); }
.box { margin: 24px 0; padding: 16px 20px; border: 1px solid var(--border); border-left: 3px solid var(--built-text); border-radius: 8px; background: var(--surface); }
.box p { margin: 0; }
table { width: 100%; border-collapse: collapse; margin: 16px 0; font-size: 15px; }
th, td { padding: 10px 8px 10px 0; border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; }
th { font-size: 13px; font-weight: 700; color: var(--text-secondary); }
footer { margin-top: 56px; padding-top: 16px; border-top: 1px solid var(--border); font-size: 14px; color: var(--text-tertiary); }
footer a { margin-right: 16px; }
