/* Print and PDF layouts: paper white, ink black, AFFERENT typography. */
@font-face { font-family: "Archivo"; src: url("../fonts/archivo-var.woff2") format("woff2"); font-weight: 100 900; font-stretch: 62% 125%; }
@font-face { font-family: "JetBrains Mono"; src: url("../fonts/jetbrains-mono-var.woff2") format("woff2"); font-weight: 100 800; }
@page { size: letter; margin: 18mm 18mm 20mm; }
* { box-sizing: border-box; }
html { background: #E9ECE8; }
body { margin: 0; font: 400 10.5pt/1.5 "Archivo", Arial, sans-serif; color: #080B0D; }
.bar { background: #080B0D; color: #F4F6F2; margin: 0; padding: 10px 20px; display: flex; gap: 20px; flex-wrap: wrap; font-size: 13px; } .bar a { color: #B7FF3C; }
.sheet { background: #fff; max-width: 8.5in; margin: 24px auto; padding: 0.75in; box-shadow: 0 2px 24px rgba(0, 0, 0, .12); }
.sheet__head { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.sheet__name { font-weight: 700; font-stretch: 125%; letter-spacing: .24em; margin: 0; font-size: 13pt; }
.sheet__doc, .meta, .sheet__foot { font: 400 7.5pt "JetBrains Mono", monospace; letter-spacing: .12em; text-transform: uppercase; color: #4A5352; margin: 0; }
.rule { height: 1px; background: #080B0D; margin: 12px 0 28px; position: relative; } .rule::after { content: ""; position: absolute; left: 40%; top: -3px; width: 36px; height: 7px; border-top: 1px solid #080B0D; border-radius: 50%; background: #fff; }
h1 { font-size: 26pt; line-height: 1; font-weight: 800; font-stretch: 100%; text-transform: uppercase; margin: 0 0 14px; letter-spacing: -.01em; }
h2 { font-size: 13pt; margin: 22px 0 6px; break-after: avoid; } h3 { font-size: 11pt; margin: 16px 0 4px; break-after: avoid; }
p, li { margin: 0 0 8px; } .lede { font-size: 12.5pt; line-height: 1.4; margin-bottom: 18px; } .small { font-size: 8pt; color: #4A5352; margin-top: 24px; border-top: 1px solid #C9CFCB; padding-top: 12px; }
table { width: 100%; border-collapse: collapse; margin: 10px 0 18px; } th, td { text-align: left; padding: 7px 10px 7px 0; border-top: 1px solid #C9CFCB; vertical-align: top; } th { font-weight: 600; width: 30%; }
blockquote { margin: 14px 0; padding-left: 14px; border-left: 2px solid #080B0D; font-size: 12pt; }
dl > div { display: grid; grid-template-columns: 30% 1fr; gap: 12px; border-top: 1px solid #C9CFCB; padding: 8px 0; } dt { font-weight: 700; } dd { margin: 0; }
aside { font-size: 8.5pt; color: #4A5352; border-left: 2px solid #9AA5A4; padding-left: 10px; margin: 12px 0; }
a { color: inherit; } .avoid-break { break-inside: avoid; }
.sheet__foot { display: flex; justify-content: space-between; gap: 12px; margin-top: 36px; padding-top: 10px; border-top: 1px solid #080B0D; }
@media print { html { background: #fff; } .screen-only { display: none !important; } .sheet { margin: 0; padding: 0; box-shadow: none; max-width: none; } }
