/* The whitepaper keeps a white document surface in either site theme. */
body[data-page="whitepaper"] .doc { display:block; max-width:58rem; padding-block:2rem 4rem; }
body[data-page="whitepaper"] .prose { max-width:none; }
.paper { padding:clamp(1.25rem,5vw,4rem); background:#fff; color:#171717; border:0; font:1rem/1.7 "Manrope",system-ui,Arial,sans-serif; }
[data-refined] .paper h1, [data-refined] .paper h2, [data-refined] .paper h3 { font-family:inherit; font-weight:700; color:#17212b; letter-spacing:-.02em; text-wrap:pretty; max-width:none; }
[data-refined] .paper h1 { font-size:2rem; line-height:1.25; }
[data-refined] .paper h2 { color:#007976; font-size:1.5rem; line-height:1.35; margin-top:2rem; }
[data-refined] .paper h3 { font-size:1.0625rem; line-height:1.4; margin-top:1.5rem; }
.paper p { margin-top:.8rem; text-align:left; }
.paper a { color:#171717; text-decoration:underline; text-underline-offset:2px; overflow-wrap:anywhere; }
.paper a:focus-visible { outline:2px solid #111; outline-offset:3px; }
.paper code { color:#171717; background:#f3f3f3; font-size:.82em; border-radius:0; }
.paper-title { text-align:left; margin-bottom:2.2rem; border-bottom:1px solid #ddd; padding-bottom:1.5rem; }
.paper-title p { text-align:left; font-size:.9375rem; margin-top:.55rem; }
.paper-title .paper-authors { font-size:1.0625rem; margin-top:1.2rem; }
.paper-title .paper-formats { font-size:.875rem; margin-top:.9rem; }
.paper-abstract { margin:0 clamp(0rem,2vw,1.75rem) 2rem; font-size:.9375rem; line-height:1.6; }
[data-refined] .paper-abstract h2 { font-size:1rem; text-align:center; margin:0; }
.paper-figure { margin:1.8rem auto; break-inside:avoid; }
.paper-figure img { display:block; width:100%; height:auto; max-width:100%; margin:auto; }
.paper-figure figcaption { margin-top:.7rem; color:#333; font-size:.875rem; line-height:1.5; }
.paper-references { font-size:.875rem; line-height:1.5; padding-left:1.5rem; }
.paper-references li { margin-top:.8rem; overflow-wrap:anywhere; scroll-margin-top:calc(var(--header-height,5rem) + 1rem); }
@media (max-width:35rem) { .paper { font-size:1rem; padding:1.15rem; } [data-refined] .paper h1 { font-size:1.5rem; } .paper-figure { overflow:auto; } .paper-figure img { min-width:28rem; max-width:none; } }
@media print { .paper { border:0; padding:0; font-size:11pt; } .paper-formats { display:none; } .paper-figure img { min-width:0; } }

.paper-figure:focus-visible { outline:2px solid #111; outline-offset:3px; }

.paper-kicker { color:#007976; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.diagram-source { display:inline-block; margin-left:.3rem; font-size:.75rem; }

.paper-downloads { margin-top:2.5rem; padding-top:1.5rem; border-top:1px solid #ddd; }
[data-refined] .paper-downloads h2 { margin-top:0; }
.paper-download-actions { display:flex; align-items:center; flex-wrap:wrap; gap:1rem; }
.paper a.paper-download-button { display:inline-flex; align-items:center; justify-content:center; min-height:2.75rem; padding:.7rem 1.1rem; border:1px solid #007976; background:#007976; color:#fff; font-weight:700; text-decoration:none; }
.paper a.paper-download-button:hover { background:#005c59; border-color:#005c59; }
@media print { .paper-downloads { display:none; } }
