/* Ibsen: the good student / Anarcho-Punk Editorial theme
   Black and red lead; electric purple supports the hierarchy;
   acid yellow and electric pink appear as deliberate interruptions.
   No external dependencies; responsive, keyboard-accessible and printable. */
:root {
  --black: #0D0D10;
  --red: #F22032;
  --purple: #B026FF;
  --purple-readable: #C879FF;
  --yellow: #F8FF2E;
  --pink: #FF3DAA;
  --white: #F0EFEB;
  --navy: #101014;
  --navy-deep: #08080A;
  --navy-light: #38242D;
  --text: #E7E1E4;
  --muted: #B0A5AC;
  --ink-soft: #C8BDC4;
  --teal: var(--purple-readable);
  --teal-deep: var(--pink);
  --gold: var(--red);
  --line: #392D35;
  --paper: #171317;
  --background: var(--black);
  --well: #1F171D;
  --serif: Georgia,'Times New Roman',serif;
  --sans: Inter,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --shadow: 0 13px 40px rgba(0,0,0,.24);
}
*,*::before,*::after {box-sizing:border-box}
html {scroll-behavior:smooth;scroll-padding-top:7rem}
body {margin:0;background:var(--background);color:var(--text);font:16px/1.75 var(--sans);-webkit-font-smoothing:antialiased}
body::selection {color:var(--navy-deep);background:#cbe5de}
a {color:var(--teal-deep);text-underline-offset:3px}
a:focus-visible,button:focus-visible {outline:3px solid #e5aa58;outline-offset:4px;border-radius:3px}
button {font:inherit;cursor:pointer}
.skip-link {position:fixed;top:-80px;left:20px;background:white;color:var(--navy);z-index:999;padding:.8rem 1.2rem;box-shadow:var(--shadow)}
.skip-link:focus {top:12px}
.topline {background:var(--navy-deep);color:#cbdbde;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase}
.topline-inner {max-width:1600px;margin:0 auto;display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:32px;padding:0 37px}
.topline-separator {color:var(--gold);padding:0 8px}
.site-header {position:sticky;top:0;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);z-index:99;box-shadow:0 3px 16px rgba(10,35,46,.035);backdrop-filter:blur(12px)}
.header-inner {height:76px;max-width:1600px;margin:auto;padding:0 37px;display:flex;justify-content:space-between;align-items:center;gap:28px}
.site-identity {text-decoration:none;color:var(--navy);display:flex;align-items:center;gap:13px}
.identity-mark {height:46px;min-width:48px;padding-top:1px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--navy-light);font:700 19px/1 var(--serif);letter-spacing:-1px}
.identity-dot {color:var(--gold);padding:0 3px}
.identity-text {display:flex;flex-direction:column;line-height:1.15;gap:5px}
.identity-text strong {font:700 15px/1.1 var(--sans);letter-spacing:.015em}
.identity-text small {font:500 10px/1.35 var(--sans);color:var(--muted);letter-spacing:.045em}
.top-nav {display:flex;align-items:center;gap:24px}
.top-nav a {color:#4c5f6b;text-decoration:none;font-size:12px;font-weight:600}
.top-nav a:hover {color:var(--teal)}
.print-button {border:1px solid #cbd9da;background:white;color:var(--navy);padding:10px 13px;border-radius:4px;font-size:12px;font-weight:650;display:inline-flex;align-items:center;gap:8px}
.print-button:hover {background:var(--well)}
.menu-toggle {display:none;border:1px solid var(--line);background:white;border-radius:3px;width:42px;height:40px;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.menu-toggle span {display:block;width:17px;height:1.5px;background:var(--navy)}
.page-grid {max-width:1600px;margin:auto;display:grid;grid-template-columns:258px minmax(0,1fr);align-items:start}
.side-rail {position:sticky;top:76px;height:calc(100vh - 76px);border-right:1px solid var(--line);background:#f9fbfa;overflow-y:auto}
.side-inner {padding:51px 20px 35px 31px;max-width:270px;margin-left:auto}
.rail-heading {margin:0 0 21px;padding:0 14px;font-size:11px;color:#66777f;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.toc {display:flex;flex-direction:column;gap:4px}
.toc a {display:flex;align-items:start;gap:13px;text-decoration:none;border-left:2px solid transparent;padding:12px 10px 12px 13px;color:#55636b;font-size:12.5px;line-height:1.4;transition:color .15s,border-color .15s,background .15s}
.toc a:hover {background:#eff5f2;color:var(--teal-deep)}
.toc a.active {border-left-color:var(--teal);background:#eaf1ee;color:var(--navy);font-weight:700}
.toc-num {font-size:10px;letter-spacing:.035em;color:#8b9da4;padding-top:1px;flex-shrink:0}
.toc a.active .toc-num {color:var(--teal)}
.rail-footnote {margin:36px 12px 0;padding:20px 17px 0;border-top:1px solid var(--line)}
.small-cap {font-size:10px;font-weight:750;letter-spacing:.15em;text-transform:uppercase;color:var(--teal)}
.rail-footnote p {font:italic 15px/1.6 var(--serif);color:#506069;margin:10px 0 13px}
.rail-link {font-size:12px;font-weight:700;text-decoration:none}
main {min-width:0}
.article-column {max-width:1032px;padding:0 62px 50px;margin:0 auto}
.breadcrumbs {display:flex;gap:10px;align-items:center;margin:32px 0 23px;font-size:11px;color:#819097;letter-spacing:.07em;text-transform:uppercase}
.breadcrumbs a {color:#74848d;text-decoration:none}
.breadcrumbs a:hover {color:var(--teal)}
.hero {display:grid;grid-template-columns:minmax(0,1fr) 205px;gap:27px;align-items:center;background:var(--navy);color:white;min-height:356px;padding:48px 42px;position:relative;overflow:hidden;border-radius:3px;box-shadow:var(--shadow)}
.hero::before {content:"";position:absolute;top:-130px;right:-55px;width:440px;height:440px;border:1px solid rgba(255,255,255,.055);transform:rotate(-22deg)}
.hero::after {content:"";position:absolute;bottom:-160px;right:140px;width:440px;height:440px;border:1px solid rgba(255,255,255,.04);transform:rotate(17deg)}
.hero-content {position:relative;z-index:1}
.eyebrow {display:flex;align-items:center;gap:13px;margin:0 0 22px;color:#d4b07c;font-size:10px;font-weight:700;letter-spacing:.175em;text-transform:uppercase}
.eyebrow-rule {width:20px;height:1px;background:#bd965d}
h1 {margin:0;color:white;letter-spacing:-.036em;font:normal clamp(2.05rem,3.1vw,3.1rem)/1.16 var(--serif)}
h1 em {color:#e4c494;font-weight:400}
.hero-deck {max-width:570px;margin:22px 0 26px;font-size:16px;line-height:1.65;color:#d8e4e8;font-weight:350}
.hero-meta {display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:#abc1c8;text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:650}
.meta-dot {height:3px;width:3px;background:#a5aaa9;border-radius:50%}
.hero-art {position:relative;z-index:1;display:flex;align-items:center;justify-content:center}
.art-border {width:174px;height:215px;border:1px solid rgba(217,187,142,.52);position:relative;display:flex;align-items:center;justify-content:center}
.art-border::before,.art-border::after {content:"";position:absolute;background:var(--navy)}
.art-border::before {width:55px;height:2px;left:-14px;top:25px}
.art-border::after {width:2px;height:55px;right:21px;bottom:-14px}
.art-number {position:absolute;top:14px;right:13px;color:#c9ad81;font-size:10px;letter-spacing:.17em}
.art-glyph {font:normal 142px/1 var(--serif);color:#d6bd91;transform:translateY(-5px);opacity:.92}
.art-caption {position:absolute;bottom:13px;left:17px;color:#d8c19e;text-transform:uppercase;letter-spacing:.14em;font-size:9px;line-height:1.55}
.section {scroll-margin-top:130px;padding:54px 0 4px;border-bottom:1px solid var(--line)}
.section:last-of-type {border-bottom:0}
.section-label {display:flex;align-items:center;gap:11px;margin:0 0 17px;color:var(--teal);font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:750}
.section-index {display:grid;place-items:center;width:28px;height:28px;border:1px solid #b7cfca;border-radius:50%;font-size:10px;letter-spacing:0}
h2 {font:normal clamp(1.66rem,2.5vw,2.23rem)/1.26 var(--serif);color:var(--navy);letter-spacing:-.02em;margin:0 0 22px}
h2 em {font-weight:400}
h3 {color:var(--navy);font-weight:700}
.section p {font-size:15px;line-height:1.9;margin:0 0 19px;max-width:74ch}
.section strong {color:var(--navy)}
.overview-section {padding-top:55px}
.original-phrase {margin:28px 0;padding:24px 27px 22px;border-left:3px solid var(--gold);background:#fff;box-shadow:0 5px 25px rgba(28,50,61,.025)}
.phrase-label {display:block;margin-bottom:10px;color:#8a6f48;font-weight:700;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.original-phrase p {font:normal 18px/1.65 var(--serif);margin:0 0 9px}
.translation {display:block;color:#64727a;font-size:12px;line-height:1.5;font-style:italic}
.thesis-box {display:grid;grid-template-columns:46px 1fr;gap:15px;background:var(--well);border:1px solid #d6e6df;padding:22px 25px 20px;margin:29px 0 25px}
.thesis-symbol {display:grid;place-items:center;border-radius:50%;width:41px;height:41px;background:#d8e9e2;color:var(--teal);font-size:22px}
.section .thesis-box p {margin:6px 0 0;font-size:14.5px;line-height:1.72}
.passage-section {padding-top:58px}
.work-meta {font-size:11px!important;color:#7a898f;letter-spacing:.12em;text-transform:uppercase;margin-top:-10px!important;margin-bottom:26px!important;font-weight:650}
.meta-divider {padding:0 6px;color:#b79a69}
.passage-quote {margin:27px 0 28px;position:relative;background:#fff;border:1px solid #e0e8e6;border-left:4px solid var(--teal);padding:29px 33px 18px}
.passage-quote::before {content:'“';position:absolute;top:5px;right:20px;color:#e9eeee;font:normal 112px/1 var(--serif);pointer-events:none}
.passage-quote blockquote {font:normal 23px/1.47 var(--serif);position:relative;color:#1b3440;letter-spacing:-.012em;margin:0;max-width:710px}
.passage-quote figcaption {display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:19px;color:#75878e;font-size:11px;letter-spacing:.025em}
.speaker {color:var(--teal-deep);font-weight:750}
.passage-quote a {font-weight:700;text-decoration:none;border-bottom:1px solid #adc6be}
.application {background:#eaf1ef;margin:28px 0 31px;padding:20px 27px 18px;border-top:2px solid #bad5cb}
.application h3 {display:flex;align-items:center;gap:9px;color:#225e55;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.115em;margin:0 0 8px}
.application h3::before {content:"";width:8px;height:8px;background:var(--teal);transform:rotate(45deg)}
.section .application p {font-size:14px;line-height:1.85;margin:0}
.framework-section {padding-top:62px}
.question-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:29px 0 25px}
.question-card {min-height:184px;background:#fff;border:1px solid var(--line);border-top:2px solid var(--teal);padding:19px 21px}
.q-index {display:inline-block;color:#9badad;font:italic 21px/1 var(--serif);margin-bottom:10px}
.question-card h3 {font:700 14px/1.35 var(--sans);margin:0 0 7px}
.section .question-card p {font-size:12.5px;line-height:1.7;color:#5d6c72;margin:0}
.conclusion-section {padding-top:65px}
.closing-statement {margin:27px 0 26px;background:var(--navy);color:white;padding:29px 35px 29px;border-left:4px solid var(--gold)}
.closing-kicker {display:block;color:#dcbd8e;font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.15em;margin-bottom:11px}
.section .closing-statement p {color:#f6f8f8;font:normal 21px/1.55 var(--serif);margin:0;max-width:42em}
.section .final-line {font:italic 22px/1.55 var(--serif);color:var(--teal-deep);margin:32px 0 42px;padding-left:22px;border-left:2px solid var(--gold)}
.references-section {padding-top:62px}
.reference-list {padding:0;margin:24px 0 24px;list-style:none}
.reference-list li {display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:start;padding:19px 0;border-top:1px solid var(--line)}
.reference-list li:last-child {border-bottom:1px solid var(--line)}
.ref-number {color:var(--teal);font-size:12px;font-weight:750}
.reference-list li div {display:flex;flex-direction:column;align-items:flex-start;gap:5px;font-size:13px;line-height:1.6}
.reference-list strong {font-weight:750}
.reference-list li div span {color:#64777e}
.reference-list li a {display:inline-block;margin-top:3px;text-decoration:none;font-size:12px;font-weight:750;border-bottom:1px solid #96b4ae}
.editorial-note {font-size:12.5px;line-height:1.8;background:#fff;border-left:3px solid #b6c6ca;padding:19px 23px;color:#657178;margin:25px 0 45px}
.article-footer {display:flex;justify-content:space-between;gap:25px;align-items:center;padding:28px 0 5px;border-top:1px solid var(--line)}
.article-footer p {font-size:12px;color:#73848a;margin:7px 0}
.back-top {font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}
@media(min-width:1350px) {.article-column {padding-left:74px;padding-right:74px}.hero {padding:55px 50px}.side-inner {padding-left:38px}}
@media(max-width:1080px) {.page-grid {grid-template-columns:216px minmax(0,1fr)}.side-inner {padding-left:17px;padding-right:15px}.toc a {padding-left:9px;gap:10px}.article-column {padding-left:35px;padding-right:35px}.hero {padding:38px 33px;grid-template-columns:1fr 150px}.art-border {width:142px;height:182px}.art-glyph {font-size:118px}}
@media(max-width:830px) {
  html {scroll-padding-top:82px}
  .topline-inner {padding:0 22px}
  .topline-inner span:last-child {display:none}
  .header-inner {height:66px;padding:0 22px}
  .top-nav {margin-left:auto;gap:14px}
  .top-nav a {display:none}
  .menu-toggle {display:flex}
  .page-grid {display:block}
  .side-rail {display:none;position:fixed;top:66px;right:0;left:0;bottom:0;height:auto;z-index:90;box-shadow:0 15px 30px rgba(13,37,45,.12);border-right:0;border-bottom:1px solid var(--line);background:rgba(249,251,250,.985)}
  .side-rail.is-open {display:block}
  .side-inner {padding:20px;max-width:690px;margin:0 auto}
  .rail-heading {margin-bottom:10px}
  .toc {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
  .toc a {padding:11px 9px}
  .rail-footnote {margin-top:20px}
  .article-column {max-width:790px;padding:0 31px 32px}
  .breadcrumbs {margin:25px 0 18px}
  .hero {grid-template-columns:1fr 125px;padding:37px 31px;min-height:300px}
  .art-border {width:120px;height:164px}.art-glyph {font-size:102px}.art-number {font-size:9px}
  .hero-deck {font-size:14px}.section {scroll-margin-top:92px}
}
@media(max-width:560px) {
  .topline {font-size:9px}
  .topline-inner {padding:0 16px;min-height:28px}
  .header-inner {padding:0 15px;gap:6px}
  .identity-mark {width:39px;min-width:39px;height:39px;font-size:16px}
  .identity-text strong {font-size:12px}
  .identity-text small {font-size:9px;max-width:155px}
  .print-button {padding:9px;font-size:0;gap:0}.print-button svg {height:17px;width:17px}
  .menu-toggle {width:38px;height:37px}
  .article-column {padding:0 16px 28px}
  .breadcrumbs {font-size:10px}
  .hero {display:block;min-height:0;padding:35px 24px}
  .hero-art {display:none}
  h1 {font-size:clamp(1.9rem,9vw,2.7rem)}
  .hero-deck {font-size:14px;margin:18px 0}
  .hero-meta {font-size:9px;gap:7px}
  .section {padding-top:43px}
  h2 {font-size:1.8rem;line-height:1.27}
  .section p {font-size:14px;line-height:1.82}
  .original-phrase {padding:20px}
  .original-phrase p {font-size:16px}
  .thesis-box {grid-template-columns:1fr;padding:19px}
  .passage-quote {padding:22px 20px 15px}
  .passage-quote blockquote {font-size:20px}
  .application {padding:19px 20px}
  .question-grid {grid-template-columns:1fr;gap:10px}
  .question-card {min-height:0}
  .closing-statement {padding:24px 21px}
  .section .closing-statement p {font-size:19px}
  .section .final-line {font-size:20px}
  .toc {grid-template-columns:1fr}
  .rail-footnote {display:none}
  .article-footer {align-items:start;flex-direction:column;gap:9px}
}
@media(prefers-reduced-motion:reduce) {html {scroll-behavior:auto}*,*::before,*::after {transition:none!important;animation:none!important}}


/* --------------------------------------------------------------------------
   ANARCHO-PUNK EDITORIAL / COLOUR SYSTEM
   A deliberate hierarchy: BLACK + RED / PURPLE / YELLOW + PINK.
   The following are colour-only overrides of the established publication UI.
   -------------------------------------------------------------------------- */
::selection,body::selection {background:var(--yellow);color:#0D0D10}
body {background:var(--background);color:var(--text)}
a {color:var(--pink)}
a:hover {color:var(--yellow)}
a:focus-visible,button:focus-visible {outline:3px solid var(--yellow)}
.skip-link {background:var(--yellow);color:var(--black)}
.topline {background:#070708;color:#B8ACB2;border-bottom:1px solid #30131C}
.topline-separator {color:var(--red)}
.site-header {background:rgba(13,13,16,.975);border-bottom:2px solid #96202A;box-shadow:0 6px 24px rgba(0,0,0,.35)}
.site-identity {color:var(--white)}
.identity-mark {color:var(--white);border:2px solid var(--red);background:#240E16}
.identity-dot {color:var(--purple-readable)}
.identity-text strong {color:var(--white)}
.identity-text small {color:#AEA0AC}
.top-nav a {color:#D9CED3}
.top-nav a:hover {color:var(--pink)}
.print-button {border-color:var(--red);color:var(--white);background:#1A1116}
.print-button:hover {background:var(--red);color:#FFFFFF}
.menu-toggle {border-color:var(--red);background:#191318}
.menu-toggle span {background:var(--white)}
.side-rail {background:#111014;border-right:1px solid #39222D}
.rail-heading {color:var(--purple-readable)}
.toc a {color:#BEB2B9}
.toc a:hover {background:#24151E;color:var(--white)}
.toc a.active {background:#2A121B;border-left-color:var(--red);color:var(--white)}
.toc-num {color:#98818D}
.toc a.active .toc-num {color:#FF5767}
.rail-footnote {border-color:#41232F}
.small-cap {color:var(--purple-readable)}
.rail-footnote p {color:#DBCDD4}
.rail-link {color:var(--pink)}
.breadcrumbs {color:#AD9AA5}
.breadcrumbs a {color:#BDABB5}
.breadcrumbs a:hover {color:var(--pink)}
.hero {background:linear-gradient(125deg,#241016 0%,#100E12 58%,#09090C 100%);border-left:5px solid var(--red);border-top:1px solid #71202D;box-shadow:0 20px 42px rgba(0,0,0,.26)}
.hero::before {border-color:rgba(242,32,50,.18)}
.hero::after {border-color:rgba(176,38,255,.11)}
.eyebrow {color:#FF6F7B}
.eyebrow-rule {background:var(--red)}
h1 {color:var(--white)}
h1 em {color:var(--red)}
.hero-deck {color:#DED1D8}
.hero-meta {color:#C5AAB6}
.meta-dot {background:var(--red)}
.art-border {border-color:var(--red)}
.art-border::before,.art-border::after {background:#130C11}
.art-number {color:var(--purple-readable)}
.art-glyph {color:var(--red);text-shadow:2px 2px 0 rgba(176,38,255,.65)}
.art-caption {color:#E9BFC7}
.section {border-bottom-color:#3B2C34}
.section-label {color:var(--purple-readable)}
.section-index {border-color:var(--red);color:#FF6572;border-radius:0}
h2,h3 {color:var(--white)}
h2 em {color:var(--white)}
.section strong {color:#FFFFFF}
.original-phrase {background:#1B161B;border-left-color:var(--red);box-shadow:none}
.phrase-label {color:#FF737F}
.original-phrase p {color:var(--white)}
.translation {color:#C9B7C4}
.thesis-box {background:#28151D;border:1px solid #67303B}
.thesis-symbol {background:#481722;color:var(--red)}
.section .thesis-box strong {color:var(--yellow)} /* first deliberate neon interruption */
.work-meta {color:#ADA0AB}
.meta-divider {color:var(--red)}
.passage-quote {background:#1A171C;border:1px solid #3D2833;border-left:4px solid var(--red)}
.passage-quote::before {color:#39232F}
.passage-quote blockquote {color:#F2EAEE}
.passage-quote figcaption {color:#B6A8B1}
.speaker {color:var(--purple-readable)}
.passage-quote a {color:var(--pink);border-bottom-color:#B32972}
.passage-quote a:hover {color:var(--yellow);border-bottom-color:var(--yellow)}
.application {background:#201722;border-top-color:#8B32B8}
.application h3 {color:var(--purple-readable)}
.application h3::before {background:var(--red)}
.question-card {background:#19161B;border:1px solid #3C2D35;border-top:2px solid var(--red)}
.q-index {color:#FF5263}
.question-card h3 {color:var(--white)}
.section .question-card p {color:#C9BBC4}
.closing-statement {background:#2B101B;border-left-color:var(--red)}
.closing-kicker {color:var(--yellow)} /* second deliberate neon interruption */
.section .closing-statement p {color:#F9F2F2}
.section .final-line {color:var(--white);border-left-color:var(--red)}
.reference-list li {border-color:#3E303A}
.ref-number {color:#FF5969}
.reference-list li div span {color:#B9ABB5}
.reference-list li a {color:var(--pink);border-bottom-color:#A83373}
.reference-list li a:hover {color:var(--yellow);border-bottom-color:var(--yellow)}
.editorial-note {background:#1A171B;border-left-color:#A92F3D;color:#C8BFC4}
.article-footer {border-top-color:#53313B}
.article-footer p {color:#BFB1BA}
.back-top {color:var(--pink)}
@media(max-width:830px) {
  .side-rail {background:rgba(17,16,20,.99);border-bottom-color:#67313D;box-shadow:0 15px 30px rgba(0,0,0,.55)}
}

@page {size:A4;margin:16mm 17mm}
@media print {
  :root {--text:#111;--navy:#111;--teal:#20554f}
  html {scroll-behavior:auto}
  body {background:white;color:#111;font-size:11pt;line-height:1.45}
  .topline,.site-header,.side-rail,.breadcrumbs,.hero-art,.article-footer,.skip-link {display:none!important}
  .page-grid {display:block;max-width:none}
  .article-column {padding:0;max-width:none;margin:0}
  .hero {box-shadow:none;min-height:0;background:white;color:black;padding:0 0 18pt;border-bottom:1.5pt solid #333;border-radius:0}
  .hero::before,.hero::after {display:none}
  .eyebrow,.hero-deck,.hero-meta {color:#444}
  h1,h1 em {color:#111;font-size:27pt}
  .section {padding:24pt 0 6pt;scroll-margin-top:0;break-inside:auto}
  h2 {font-size:19pt;break-after:avoid}
  .section p {font-size:10.5pt;line-height:1.55}
  .passage-quote,.thesis-box,.original-phrase,.application,.question-card,.closing-statement,.editorial-note {background:white!important;color:#111!important;box-shadow:none!important;border-color:#b7b7b7!important;break-inside:avoid}
  .passage-quote blockquote,.section .closing-statement p,.section .final-line {color:#111!important}
  .closing-kicker {color:#444}
  .question-grid {gap:10pt}
  .question-card {min-height:0}
  a {color:#222;text-decoration:underline}
  .reference-list li {break-inside:avoid}
  .references-section a::after {content:' (' attr(href) ')';font-size:8pt;word-break:break-all}
}

@media print {
  :root {--text:#111;--purple-readable:#333;--red:#333;--pink:#222;--white:#111;--line:#bbb}
  .section strong,.section .thesis-box strong,.section-label,.section-index,
  .small-cap,.rail-heading,.phrase-label,.translation,.work-meta,.meta-divider,
  h2,h2 em,h3,.speaker,.q-index,.ref-number,.section .question-card p,
  .passage-quote figcaption,.reference-list li div span,.original-phrase p,
  .original-phrase .translation,.editorial-note,.article-footer p {color:#111!important}
  .original-phrase,.thesis-box,.passage-quote,.application,.question-card,
  .closing-statement,.editorial-note {background:#fff!important;border-color:#888!important}
  .thesis-symbol {background:#f2f2f2!important;color:#111!important}
  .passage-quote::before {color:#ddd!important}
  .application h3::before {background:#444}
  .hero {border-left:0;border-top:0}
  .section .final-line {color:#111!important}
}
