/* Shared Apple-inspired reading surfaces for guides, policies and confirmation. */
:root {
  color-scheme: dark;
  --bg: #000;
  --surface: #161617;
  --ink: #f5f5f7;
  --text: #a1a1a6;
  --blue: #2997ff;
  --border: #3a3a3c;
  --public-font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", "Segoe UI", system-ui, sans-serif;
}
html { background: var(--bg); }
body {
  background: var(--bg);
  color: var(--ink);
  font-family: var(--public-font);
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6 { color: var(--ink); font-family: var(--public-font); }
a, .read, .eyebrow { color: var(--blue); }
a:hover { color: #66b5ff; }
p, ul, ol, .lead, .reviewed, .byline, .references, .breadcrumbs,
.breadcrumbs a, .toc a { color: var(--text); }
.toc strong, .card h3 a { color: var(--ink); }
.toc a:hover, .card h3 a:hover { color: var(--blue); }
.shell, .cta { max-width: 1040px; }
.intro { padding-block: 48px; }
.intro h1 { font-weight: 700; letter-spacing: -.04em; }
.reading-layout { gap: 36px; }
.reading-layout article, .card, .archive-list, .exchange-archive-notice,
.product-status, .cta {
  background: var(--surface);
  color: var(--ink);
  border-color: var(--border);
  box-shadow: none;
}
.reading-layout article section + section, .toc { border-color: var(--border); }
.card { border-radius: 24px; }
.number, .checklist, #worksheet, #methodology {
  background: #222225;
  border-color: var(--border);
}
.number { color: var(--blue); }
.archive-list summary { color: var(--blue); }
.table-scroll, .table-scroll th, .table-scroll td { border-color: var(--border); }
.table-scroll { background: var(--surface); }
.table-scroll caption, .table-scroll th {
  background: #222225;
  color: var(--ink);
}
.table-scroll td { background: var(--surface); color: var(--text); }
.table-scroll tr:nth-child(even) td { background: #1d1d1f; }
.table-scroll { scrollbar-color: #68686d #161617; }
input, textarea, select {
  background: #1d1d1f;
  color: var(--ink);
  border-color: var(--border);
  font-family: var(--public-font);
}
input::placeholder, textarea::placeholder { color: var(--text); opacity: 1; }
button { font-family: var(--public-font); }
.button {
  background: #0071e3;
  color: #fff;
  border-radius: 999px;
  box-shadow: none;
  font-weight: 500;
}
.button:hover { background: #006bd6; color: #fff; }
:focus-visible { outline: 3px solid var(--blue); outline-offset: 4px; }
.skip { background: var(--surface); color: var(--ink); border: 1px solid var(--border); }
:is(.footer, .consent) {
  --ink2: var(--ink);
  --blue2: var(--blue);
  --blueSoft: #15243a;
  font-family: var(--public-font);
}
.footer {
  background: var(--bg);
  color: var(--text);
  border-color: var(--border);
  font-size: 13px;
}
.footer strong { color: var(--ink); }
.footer p, .footer-links a, .footer-links button { color: var(--text); }
.footer-links a:hover, .footer-links button:hover { color: var(--ink); }
.footer-links a, .footer-links button { min-height: 44px; display: inline-flex; align-items: center; }
.consent {
  background: rgba(22, 22, 23, .98);
  color: var(--ink);
  border-color: var(--border);
  box-shadow: 0 20px 60px #0009;
}
.consent-title { color: var(--ink); font-size: 14px; }
.consent-text { color: var(--text); font-size: 12px; }
.consent-button { min-height: 44px; font-size: 12px; border-color: var(--border); }
.consent-reject { color: var(--ink); background: #262628; }
.consent-reject:hover { background: #303033; }
.consent-accept { color: #fff; background: #0071e3; border-color: #0071e3; }
.consent-accept:hover { background: #006bd6; }
body.confirmation-page main {
  background: var(--surface);
  border-color: var(--border);
  box-shadow: none;
}
body.confirmation-page #confirmEmail { background: #0071e3; border-radius: 999px; font-weight: 500; }
body.confirmation-page #confirmEmail:hover { background: #006bd6; }
body.confirmation-page footer { color: var(--text); }
@media (max-width: 900px) { .reading-layout { gap: 26px; } }
@media (max-width: 600px) {
  .intro { padding-block: 30px; }
  .card { border-radius: 20px; }
}
@media print {
  :root { color-scheme: light; --bg: #fff; --surface: #fff; --ink: #111; --text: #333; --blue: #111; --border: #ccc; }
  body, .reading-layout article, .card, .product-status, .archive-list,
  .exchange-archive-notice, .table-scroll, .table-scroll td,
  .table-scroll tr:nth-child(even) td, .footer { background: #fff; color: #111; }
  .table-scroll caption, .table-scroll th, .checklist, #worksheet, #methodology { background: #eee; color: #111; }
  .landing-nav, .consent, .skip, .footer-links { display: none !important; }
  a { color: inherit; }
}
