@page {
  size: A4;
  margin: 15mm 15mm 17mm 17mm;
  @bottom-left {
    content: "So far · Edition 01 · zhouyixiaoxiao.com";
    font: 400 8pt/1 "ZX Plex Mono", "IBM Plex Mono", monospace;
    letter-spacing: .08em;
    color: #6A6458;
  }
  @bottom-right {
    content: "p. " counter(page) " / " counter(pages);
    font: 400 8pt/1 "ZX Plex Mono", "IBM Plex Mono", monospace;
    letter-spacing: .08em;
    color: #6A6458;
  }
}
@page :first { @bottom-left { content: ""; } }
@page zh {
  @bottom-left {
    content: "至此 · 第 1 期 · zhouyixiaoxiao.com";
    font: 400 8pt/1 "ZX Plex Mono", "Noto Serif SC", "Songti SC", serif;
    letter-spacing: .08em;
    color: #6A6458;
  }
}
@page zh:first { @bottom-left { content: ""; } }
@page zh { @bottom-right { content: "第 " counter(page) " 页，共 " counter(pages) " 页"; font: 400 8pt/1 "ZX Plex Mono", "Noto Serif SC", "Songti SC", serif; color: #6A6458; } }
@media print {
  .cv__pdf, .cv__pdf-sep, .cv__foot > li:has(> .cv__pdf) { display: none !important; }
  :root, :root:not([data-theme="light"]), :root[data-theme="dark"], :root[data-theme="light"] {
    --paper:#FFFFFF; --paper-2:#F6F3EC; --paper-3:#E9E3D6;
    --ink:#111; --ink-2:#333; --ink-3:#555; --ink-4:#999;
    --rule:rgba(0,0,0,.22); --rule-strong:#111;
    --verm:#C4351C; --verm-ink:#A82C16; --verm-wash:rgba(196,53,28,.08);
    --on-verm:#FBF6EC; --gold-ink:#83530B; --gold-wash:rgba(242,180,90,.18); --misreg-ink:rgba(21,19,15,.55);
    --surface:transparent;
    --fs-body:10.5pt; --fs-body-zh:10.5pt; --fs-caption:8.5pt; --fs-mono:8pt; --fs-min:8pt; --fs-slip:8pt; --fs-readout:8.5pt;
    --fs-lede:12.5pt; --fs-h2:20pt; --fs-h3:13pt;
    --fs-display-xl:34pt; --fs-display-l:40pt; --fs-giant:120pt;
    --lh-body:1.45; --lh-body-zh:1.7;
    --margin:0mm; --gutter:5mm; --hdr:0px; --rail:0px; --strip-h:0px;
    --section-gap:10mm;
    --plate-h:88mm;
    color-scheme: light;
  }
  html, body { background: #fff !important; color: var(--ink); }
  html:lang(zh) body { page: zh; }
  body { font-size: var(--fs-body); line-height: var(--lh-body); }
  body::before, body::after { display: none !important; content: none !important; }
  * { -webkit-print-color-adjust: exact; print-color-adjust: exact; box-shadow: none !important; text-shadow: none !important; animation: none !important; transition: none !important; }
  .skip, .thumbs, .console, .console-lite, .passport, .stamp, .toast, .lang-suggest, .lang-hint, .key-help,
  .btn--copy, .copy-status, .fig-try, .plate__try, .plate__legend, .chapter-exp, .site-header__passport,
  .sheet, .sheet-backdrop, .ev-card, .plate__hint, .plate__toast, .plate-controls, .plate-chip,
  .plate__gl, .plate__fx, .plate__glow, .site-header__nav, .site-header__now, .theme-switch,
  .sound-switch, .figure__controls, .stepper__steps, .console__foot, .measure-link, .chapter-next__hint,
  .reply-card, .your-passage, .hist__canvas, .hist__stage > canvas, .hist__seal, .noscript-note,
  .plate__noscript, canvas, video, [data-print="hide"], .no-print { display: none !important; }
  [data-print="show"], .print-only { display: block !important; }
  .page { padding: 0 !important; }
  .wrap, .site-header__inner, .site-footer__inner { max-width: none; padding-inline: 0; }
  .site-header { position: static; height: auto; padding: 0 0 4mm; border-bottom: 1.5pt solid var(--ink); }
  .site-header__inner { height: auto; }
  .site-header__identity { display: block !important; max-width: none; white-space: normal; }
  .site-header__id::after {
    content: "So far · Edition 01";
    margin-left: auto;
    font: 500 8pt/1 var(--f-mono);
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--verm-ink);
  }
  :lang(zh) .site-header__id::after, .site-header__id:lang(zh)::after { content: "至此 · 第 1 期"; font-family: var(--f-cjk-ui); letter-spacing: .02em; }
  .site-header__id[data-print-edition]::after { content: attr(data-print-edition); }
  .site-header__id { width: 100%; }
  .seal { width: 12mm; height: 12mm; }
  .site-footer { margin-top: 8mm; padding: 4mm 0 0; }
  .site-footer__cols { display: none; }
  .site-footer__meta { margin-top: 0; border-top: 0; padding-top: 0; }
  h1, h2, h3, h4, .section__head, .figure__head, .opener__title, .chapter__section-title { break-after: avoid; page-break-after: avoid; }
  p, li, dd { orphans: 3; widows: 3; }
  .card10, .ch-card, .keyfig, .paper-card, .figure, .colophon-box, .cv__item, .ledger tr, .ledger__row, .boundary__link, .results-table tr, .sidenote, blockquote { break-inside: avoid; page-break-inside: avoid; }
  a { color: inherit; text-decoration: none; }
  .prose a[href^="http"]::after, .ledger__title a[href^="http"]::after, .cv__what a[href^="http"]::after, .paper-card__links a[href^="http"]::after, .articles__link a[href^="http"]::after {
    content: " \2014 " attr(href);
    font: 400 8pt/1.2 var(--f-mono);
    letter-spacing: 0;
    color: var(--ink-3);
    word-break: break-all;
  }
  .card10__reach a[href^="http"]::after { content: " " attr(href); text-transform: none; letter-spacing: 0; font-size: 8pt; color: var(--ink-3); }
  .card10__reach a[href^="mailto:"]::after { content: " " attr(href); text-transform: none; letter-spacing: 0; font-size: 8pt; }
  .masthead { min-height: 0; padding-block: 5mm 3mm; grid-template-columns: auto minmax(0, 1fr); column-gap: 6mm; }
  .masthead__glyph { min-height: 30mm; margin-block: 0; margin-left: 0; font-size: 54pt; clip-path: none; border-bottom: 0; }
  .masthead__glyph::after { display: none !important; }
  .masthead__glyph > .giant { top: 0; margin-left: 0; }
  .card10 { background: none; font-size: 9.5pt; border-top-width: 1.5pt; }
  .plate-fig {
    grid-template-columns: 9mm minmax(0, 1fr);
    grid-template-areas: "lanes stage" ". hist" ". cap";
    row-gap: 4mm;
  }
  .lane__label, .lane__no { display: none; }
  .lane { padding: 0; align-items: center; }
  .lane__glyph { font-size: 12pt; }
  .hist { height: auto; display: grid; grid-template-columns: minmax(0, 1fr) 55mm; grid-template-areas: "head head" "stage readout"; column-gap: 5mm; }
  .hist__head { grid-area: head; display: flex; flex-wrap: wrap; gap: 2mm 6mm; align-items: baseline; }
  .hist__stage { grid-area: stage; height: 30mm; flex: none; }
  .hist__readout { grid-area: readout; }
  .plate {
    height: var(--plate-h);
    background: #fff url("/img/plate-engraving-landscape.webp") center / 100% 100% no-repeat !important;
    border: .75pt solid var(--ink);
    color: var(--ink);
  }
  .plate::after, .plate::before, .plate__fog, .plate__grid { display: none !important; }
  .plate__print { display: none !important; }
  .plate__edge { color: var(--ink-3); }
  .ev { color: var(--ink); }
  .ev__dot { background: #fff; border-color: var(--ink); box-shadow: none; }
  .ev--origin .ev__dot, .ev--reached .ev__dot { background: var(--ink); border-color: var(--ink); }
  .ev--target::before { border-color: var(--verm); }
  .ev__label.slip { background: rgba(255,255,255,.9); color: var(--ink); border: 0; box-shadow: none; font-size: 8pt; padding: 0 2px; }
  .ev--p3 .ev__label { display: none; }
  .arc-label { background: #fff; color: var(--verm-ink); border-color: var(--verm); }
  .plate-fig__lanes { height: var(--plate-h); }
  .hist__static { display: block !important; }
  .plate-fig__stage::before, .plate-fig__stage::after { border-color: var(--ink); }
  .chapter > * + * { margin-top: 8mm; }
  .opener { min-height: 0; padding-block: 4mm; align-items: start; }
  .opener::after { display: none; }
  .opener__glyph { font-size: 110pt; margin-left: 0; }
  .figure__stage { min-height: 0; border-color: var(--ink); }
  .figure__stage--dark { background: #fff !important; color: var(--ink); border: .75pt solid var(--ink); }
  .figure__stage--dark::after { display: none; }
  .figure__static { display: block !important; visibility: visible !important; }
  .js .figure.is-live .figure__static { visibility: visible !important; }
  .lane-crop img { filter: invert(1) grayscale(1) contrast(1.1); }
  .ch-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ch-card { min-height: 0; padding: 3mm 3mm 3mm 0; }
  .ch-card::before { display: none; }
  .ch-card__glyph { font-size: 28pt; }
  .ch-card__thesis { -webkit-line-clamp: unset; display: block; }
  .chapter-next { display: none; }
  .boundary { padding-block: 6mm 0; }
  .boundary::before { background: var(--ink); height: 1pt; box-shadow: none !important; left: 0; right: 0; }
  .boundary__glyph { font-size: 80pt; }
  .boundary__link { padding: 2mm 0; }
  .boundary__link-v { font-size: 16pt; }
  .boundary__link-go { display: none; }
  .boundary .boundary__link { flex-wrap: wrap; }
  .boundary .boundary__link::after, .boundary a.boundary__link.ext::after {
    content: attr(href);
    flex: 1 1 100%;
    font: 400 8pt/1.2 var(--f-mono);
    letter-spacing: 0;
    color: var(--ink-3);
    word-break: break-all;
  }
  .contact-sheet, .filmstrip { background: #fff !important; box-shadow: none; }
  .contact-sheet__frame { background: #fff; border: .5pt solid var(--ink-3); }
  .cv { padding-block: 0; font-size: 9.5pt; }
  .cv__head { gap: 2mm; padding-bottom: 3mm; }
  .cv__head > .kicker, .cv__gloss, .cv__say { display: none !important; }
  .cv__head > * { grid-row: auto !important; grid-column: 1 / -1 !important; }
  .cv__head { padding-top: 4mm; }
  .cv .paper-finding { display: none !important; }
  .cv__name { font-size: 26pt; }
  .cv__identity { font-size: 11pt; }
  .cv__out li { font-size: 9.5pt; }
  .cv__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row dense; gap: 3mm 7mm; margin-top: 3mm; }
  .cv__section, .cv__contact-block, .cv__contact-block + .cv__section { grid-column: auto; }
  .cv__section:has(.cv__papers), .cv__section--wide { grid-column: 1 / -1; }
  .cv__grid > .cv__contact-block { grid-column: 1; grid-row: 1; }
  .cv__grid > [aria-labelledby="ix-honours"] { grid-column: 1; grid-row: 2; }
  .cv__grid > [aria-labelledby="ix-lang"] { grid-column: 1; grid-row: 3; }
  .cv__grid > [aria-labelledby="ix-roles"] { grid-column: 2; grid-row: 1 / span 3; }
  .cv__lang { font-size: 9.5pt; line-height: 1.45; }
  html:lang(zh) .cv__lang { font-size: 9pt; line-height: 1.5; }
  .cv__grid > [aria-labelledby="ix-tools"] { grid-column: 1 / -1; }
  html:lang(zh) .cv__grid > [aria-labelledby="ix-tools"] { grid-row: 4; }
  .cv__grid > [aria-labelledby="ix-roles"] .cv__where { display: none; }
  .cv__grid > .cv__section:has(.cv__papers) { break-inside: avoid; }
  .cv__say-btn, .cv button { display: none !important; }
  .cv__section:has(.cv__chapters), .cv__foot { display: none !important; }
  .cv__section { break-inside: auto; }
  .cv .paper-card { break-inside: auto; }
  .cv .paper-card__title { break-after: avoid; }
  html:lang(zh) .cv { font-size: 9pt; line-height: 1.5; }
  html:lang(zh) .cv__item, html:lang(zh) .cv__out li, html:lang(zh) .cv .paper-card__venue, html:lang(zh) .cv .paper-card__title { line-height: 1.45; }
  html:lang(zh) .cv__identity, html:lang(zh) .cv__who { line-height: 1.5; }
  .cv__h { font-size: 10.5pt; margin-bottom: 1.5mm; }
  .cv__item { padding: 1mm 0; font-size: 9.5pt; grid-template-columns: minmax(0, 1fr) auto !important; }
  .cv__item > .cv__date { grid-column: 2 !important; grid-row: 1 !important; justify-self: end !important; text-align: right !important; font-size: 8pt; }
  .cv__item > .cv__where { font-size: 8.5pt; }
  .cv__contact li { min-height: 0; padding: 1mm 0; grid-template-columns: 22mm minmax(0, 1fr); }
  .cv__chapters { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .cv__chapters li { padding: .8mm 0; }
  .cv__chapters a { min-height: 0; font-size: 9pt; }
  .cv__chapters .hz, .cv__chapters .cv__glyph { font-size: 13pt; }
  .cv__chapters li > .cv__where, .cv__chapters .cv__where { display: none !important; }
  .cv__foot { margin-top: 3mm; padding-top: 2mm; }
  .paper-card { grid-template-columns: minmax(0, 1fr); padding: 2mm 0; gap: .6mm; }
  .paper-card > * { grid-column: 1 !important; grid-row: auto !important; justify-self: start !important; text-align: left; max-width: none; }
  .paper-card__title { font-size: 11pt; }
  .paper-card__links a { font-size: 8pt; }
  .cv .articles { display: none; }
  .articles { margin-top: 2mm; break-inside: avoid; }
  .articles__h { margin: 0 0 1mm; font-size: 10pt; break-after: avoid; page-break-after: avoid; }
  html:lang(zh) .articles__h { font-size: 10pt; }
  .articles__item { display: block !important; padding: 1mm 0; break-inside: avoid; page-break-inside: avoid; }
  .articles__title, html:lang(zh) .articles__title, .articles__link, html:lang(zh) .articles__link { display: inline; max-width: none; font-size: 9pt; line-height: 1.45; }
  .articles__link::before { content: " \00B7  "; color: var(--ink-3); }
  html:lang(zh) .articles__title-en { display: none; }
  .articles__authors, .articles__status { display: none; }
  .articles__link a, html:lang(zh) .articles__link a { display: inline; min-height: 0; font-size: 8.5pt; white-space: normal; }
  .tk { border-color: var(--verm); }
  .table-scroll { overflow: visible; }
  .results-table, .ledger { font-size: 9pt; }
  .sidenotes { display: block; }
  .sidenote { margin: 2mm 0; }
  .reveal, .js .reveal { opacity: 1 !important; filter: none !important; }
  .stepper--scroll { min-height: 0; }
  .stepper--scroll .stepper__sticky { position: static; }
  img { break-inside: avoid; max-width: 100% !important; }
  .ch-entry__media img { filter: none !important; }
  .cv__out li, .paper-card .paper-card__title, .paper-card .paper-card__title-en, .boundary__lede, .chapter-exp, .plate__try { max-width: none !important; }
  .chapter__why { position: static !important; }
  .card10__out { columns: auto !important; }
}
