/* Site adapter only. The whitepaper's own layout lives in whitepaper-original.css. */
body.whitepaper-original > .qz-header,
body.whitepaper-original > .qz-mobile-menu,
body.whitepaper-original > .qz-command-overlay,
body.whitepaper-original > .qz-visually-hidden {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}

body.whitepaper-original > .qz-header {
  position: sticky;
  top: 0;
  z-index: 240;
  width: 100%;
}

body.whitepaper-original .progress-wrap {
  top: var(--qz-header-height);
  z-index: 210;
}

body.whitepaper-original .top-pills {
  top: calc(var(--qz-header-height) + 3px);
  z-index: 20;
}

body.whitepaper-original .section {
  scroll-margin-top: calc(var(--qz-header-height) + 76px);
}

body.whitepaper-original .qz-header strong,
body.whitepaper-original .qz-header b,
body.whitepaper-original .qz-mobile-menu strong,
body.whitepaper-original .qz-mobile-menu b,
body.whitepaper-original .qz-command-overlay strong,
body.whitepaper-original .qz-command-overlay b {
  color: inherit;
}

body.whitepaper-original .qz-command-panel h2,
body.whitepaper-original .qz-command-panel p {
  color: var(--qz-ink);
  margin: 0;
}

body.whitepaper-original .qz-command-panel p {
  color: var(--qz-ink-tertiary);
}

body.whitepaper-original .qz-command-results,
body.whitepaper-original .qz-command-status {
  max-width: none;
}

html.dark,
html[data-theme="dark"] {
  --bg: #111318;
  --paper: #171a20;
  --ink: #f1f3f6;
  --muted: #a9b0ba;
  --soft: #8f98a5;
  --line: #343a43;
  --blue:var(--qz-accent,#58a8f7);
  --blue-soft: #172945;
  --green-soft: #172c22;
  --amber-soft: #332719;
  --red-soft: #351f20;
}

html.dark body.whitepaper-original,
html[data-theme="dark"] body.whitepaper-original {
  background: var(--bg);
  color: var(--ink);
}

html.dark body.whitepaper-original::before,
html[data-theme="dark"] body.whitepaper-original::before {
  background: radial-gradient(circle at 20% -8%, rgba(55, 132, 255, .14), transparent 30%), radial-gradient(circle at 95% 8%, rgba(126, 115, 255, .11), transparent 28%);
}

html.dark body.whitepaper-original::after,
html[data-theme="dark"] body.whitepaper-original::after {
  color: rgba(255, 255, 255, .035);
}

html.dark body.whitepaper-original .section:not(.chapter-section),
html[data-theme="dark"] body.whitepaper-original .section:not(.chapter-section) {
  background: rgba(25, 28, 34, .94);
  border-color: rgba(255, 255, 255, .07);
}

html.dark body.whitepaper-original :where(h1, h2, h3, strong, b),
html[data-theme="dark"] body.whitepaper-original :where(h1, h2, h3, strong, b) {
  color: var(--ink);
}

html.dark body.whitepaper-original :where(p, .subtitle, .row-val, .bullets li, .observe-list li, .checklist li),
html[data-theme="dark"] body.whitepaper-original :where(p, .subtitle, .row-val, .bullets li, .observe-list li, .checklist li) {
  color: #c9ced6;
}

html.dark body.whitepaper-original :where(.card, .bluebox, .quote, .reader-note, .case-story, .metaphor-card, .recognition-card, .resource-card, .form-card, .checkitem, .quad-card, .case-note, .bottom-line, .mobile-row-card, .version-card, .collect-card, .audience-card, .legal-block),
html[data-theme="dark"] body.whitepaper-original :where(.card, .bluebox, .quote, .reader-note, .case-story, .metaphor-card, .recognition-card, .resource-card, .form-card, .checkitem, .quad-card, .case-note, .bottom-line, .mobile-row-card, .version-card, .collect-card, .audience-card, .legal-block) {
  background: #20242b;
  border-color: #343a43;
}

html.dark body.whitepaper-original :where(.top-pills, .current-mini),
html[data-theme="dark"] body.whitepaper-original :where(.top-pills, .current-mini) {
  background: rgba(17, 19, 24, .9);
}

html.dark body.whitepaper-original .top-pills a,
html[data-theme="dark"] body.whitepaper-original .top-pills a {
  background: #20242b;
  border-color: #343a43;
  color: var(--ink);
}

html.dark body.whitepaper-original .toc-drawer,
html[data-theme="dark"] body.whitepaper-original .toc-drawer {
  background: #191c22;
  border-color: #343a43;
}

html.dark body.whitepaper-original .drawer-list a,
html[data-theme="dark"] body.whitepaper-original .drawer-list a {
  background: #242830;
  border-color: #343a43;
  color: var(--ink);
}

@media (max-width: 900px) {
  body.whitepaper-original .qz-mobile-menu {
    max-width: calc(100vw - 1.5rem);
    margin-left: auto;
    margin-right: 0;
  }
}

@media print {
  body.whitepaper-original > .qz-header,
  body.whitepaper-original > .qz-mobile-menu,
  body.whitepaper-original > .qz-command-overlay {
    display: none !important;
  }
}

/* Reading is intentionally narrower than browsing; tokens and controls are shared. */
html:root {
  --bg:var(--qz-canvas); --paper:var(--qz-surface); --ink:var(--qz-ink);
  --muted:var(--qz-ink-secondary); --soft:var(--qz-ink-tertiary); --line:var(--qz-line);
  --blue:var(--qz-accent); --blue-soft:var(--qz-accent-soft); --radius:var(--qz-radius-surface);
  --shadow:none;
}
body.whitepaper-original::before,body.whitepaper-original::after { display:none; }
body.whitepaper-original .section { border-radius:var(--qz-radius-surface); border-color:var(--qz-line); box-shadow:none; }
body.whitepaper-original .section:not(.chapter-section) { background:var(--qz-surface); }
body.whitepaper-original .section.hero { min-height:auto; padding:clamp(24px,4vw,48px); }
body.whitepaper-original .hero h1 { font-size:var(--qz-page-title); line-height:1.3; letter-spacing:-.025em; }
body.whitepaper-original .section h2 { font-size:var(--qz-font-size-28); line-height:1.45; }
body.whitepaper-original .section h3 { font-size:var(--qz-font-size-20); line-height:1.5; }
body.whitepaper-original .section p,body.whitepaper-original .subtitle { line-height:1.8; }
body.whitepaper-original .hero-map { width:280px!important; height:280px!important; max-width:100%; margin-top:var(--qz-space-6); }
body.whitepaper-original .center-node { width:80px; height:80px; font-size:var(--qz-font-size-24); box-shadow:none; color:var(--qz-on-accent)!important; }
body.whitepaper-original .node { box-shadow:none; border-color:var(--qz-line); }
body.whitepaper-original .top-pills { border-bottom:1px solid var(--qz-line); background:var(--qz-canvas); padding:var(--qz-space-2) var(--qz-space-4); scrollbar-width:thin; }
body.whitepaper-original .top-pills a { display:inline-flex; align-items:center; min-height:var(--qz-control); background:transparent; color:var(--qz-ink-secondary); border-color:transparent; border-radius:var(--qz-radius-control); font-size:var(--qz-font-size-14); }
body.whitepaper-original .top-pills a:hover { background:var(--qz-accent-soft); color:var(--qz-accent); }
body.whitepaper-original .float-btn { background:var(--qz-surface); border-color:var(--qz-line); box-shadow:var(--qz-shadow-float); }
body.whitepaper-original .float-btn.primary { background:var(--qz-accent); color:var(--qz-on-accent); }
body.whitepaper-original .toc-drawer-mask { z-index:260; background:var(--qz-overlay); }
body.whitepaper-original .toc-drawer { z-index:270; border-color:var(--qz-line); border-radius:var(--qz-radius-surface) var(--qz-radius-surface) 0 0; background:var(--qz-surface); }
body.whitepaper-original .drawer-head { position:sticky; top:-18px; z-index:1; padding:var(--qz-space-2) 0; background:var(--qz-surface); }
body.whitepaper-original .drawer-close { width:var(--qz-control); height:var(--qz-control); border-radius:var(--qz-radius-control); color:var(--qz-ink); background:var(--qz-surface-muted); }
body.whitepaper-original .drawer-list a { border-color:var(--qz-line); border-radius:var(--qz-radius-control); background:var(--qz-canvas); font-size:var(--qz-font-size-14); }
body.whitepaper-original :focus-visible { outline:2px solid var(--qz-focus); outline-offset:3px; }
/* Restore the original diagram/score structures, which had no usable layout. */
body.whitepaper-original { line-height:1.7; }
body.whitepaper-original :where(.world-map,.industry-flow,.tree,.score-card-grid,.shape-grid,.score-bands) { display:grid; gap:var(--qz-space-4); margin-block:var(--qz-space-4); }
body.whitepaper-original :where(.wm-row,.industry-flow > div,.tree > div,.score-card,.shape-card,.score-bands > div,.layers > div) { padding:var(--qz-space-4); border:1px solid var(--qz-line); border-radius:var(--qz-radius-control); background:var(--qz-canvas); }
body.whitepaper-original :where(.wm-row,.industry-flow > div,.tree > div,.flow-node,.action-road > div) > :where(b,span) { display:block; }
body.whitepaper-original :where(.wm-row,.industry-flow > div,.tree > div,.flow-node,.action-road > div) > span { color:var(--qz-ink-secondary); margin-top:var(--qz-space-2); }
body.whitepaper-original .layers > div > span { margin-right:var(--qz-space-2); color:var(--qz-accent); }
body.whitepaper-original .score-card > p { margin-top:var(--qz-space-3); font-size:var(--qz-font-size-14); }
body.whitepaper-original .score-scale { display:flex; flex-wrap:wrap; gap:var(--qz-space-2); }
body.whitepaper-original .score-scale span { display:inline-flex; align-items:center; justify-content:center; min-width:var(--qz-control); min-height:var(--qz-control); border:1px solid var(--qz-line); border-radius:var(--qz-radius-control); background:var(--qz-surface); font-weight:600; }
body.whitepaper-original .score-scale span:hover { background:var(--qz-accent-soft); transform:none; }
body.whitepaper-original .score-scale span.selected { color:var(--qz-on-accent)!important; box-shadow:none; text-decoration:underline; text-underline-offset:4px; }
body.whitepaper-original .copy-quote { padding-bottom:64px!important; }
body.whitepaper-original .copy-btn { min-height:var(--qz-control); border-radius:var(--qz-radius-control); background:var(--qz-accent); color:var(--qz-on-accent); box-shadow:none; }
body.whitepaper-original .card.accent { display:block; border-radius:var(--qz-radius-surface); }
html.dark body.whitepaper-original :where(.badge-note,.label,.date-badge,.search-tip,.prompt-chain,.version-tags span,.mini-tag) { background:var(--qz-surface-muted); color:var(--qz-ink-secondary); border-color:var(--qz-line); }
html.dark body.whitepaper-original :where(.audience-card li,.copyright-note,.footer-signature,.current-mini) { color:var(--qz-ink-secondary); }
html.dark body.whitepaper-original .row-line { border-color:var(--qz-line); }
html.dark body.whitepaper-original :where(.legend-green,.legend-amber,.legend-red) { color:var(--qz-ink); }
@media(max-width:600px) {
  body.whitepaper-original .section { margin:var(--qz-space-4); padding:var(--qz-space-6) var(--qz-space-4); }
  body.whitepaper-original .hero h1 { font-size:var(--qz-font-size-28); }
  body.whitepaper-original .hero-map { width:240px!important; height:240px!important; }
  body.whitepaper-original .floating-actions { bottom:calc(var(--qz-space-3) + env(safe-area-inset-bottom)); flex-direction:row; }
  body.whitepaper-original { padding-bottom:80px; }
}
@media(prefers-reduced-motion:reduce) { body.whitepaper-original *,body.whitepaper-original *::before,body.whitepaper-original *::after { animation:none!important; transition:none!important; scroll-behavior:auto; } }

body.whitepaper-original :is(p,li) { line-height:1.8; }
body.whitepaper-original :is(h2,h3,h4) { line-height:1.5; letter-spacing:0; }
body.whitepaper-original h2 { font-size:var(--qz-font-size-24); }
body.whitepaper-original h3 { font-size:var(--qz-font-size-20); }
body.whitepaper-original h4 { font-size:var(--qz-font-size-16); }

body.whitepaper-original .top-pills a[aria-current="page"] {color:var(--qz-accent);font-weight:600;background:var(--qz-accent-soft)}
@media(max-width:600px){
 body.whitepaper-original .hero-map {width:200px!important;height:200px!important;margin-block:20px}
 body.whitepaper-original .center-node {width:64px;height:64px}
 body.whitepaper-original .top-pills {gap:2px;padding-inline:12px}
 body.whitepaper-original .top-pills a {padding-inline:10px}
}

/* Keep the whitepaper entrance brief; preserve its original content and anchors. */
body.whitepaper-original .hero .cover-meta { display:flex; flex-wrap:wrap; gap:4px 16px; margin-top:16px; }
body.whitepaper-original .hero .cover-meta span { white-space:nowrap; }
body.whitepaper-original .whitepaper-entry-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
body.whitepaper-original .whitepaper-entry-actions a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 18px; border:1px solid var(--qz-line); border-radius:var(--qz-radius-control); color:var(--qz-ink); background:var(--qz-surface); font-size:var(--qz-font-size-16); font-weight:600; text-decoration:none; }
body.whitepaper-original .whitepaper-entry-actions a:first-child { color:var(--qz-on-accent); background:var(--qz-accent); border-color:var(--qz-accent); }
body.whitepaper-original .whitepaper-entry-actions a:hover { filter:brightness(.96); }
