/* Aux Labs paper typography — Neu Brutalism reading layer, token-aware (light/dark). */
.paper-prose { background: rgb(var(--paper-rgb)); }
.paper-prose h1, .paper-prose h2, .paper-prose h3, .paper-prose h4 {
  font-family: 'Inter',sans-serif; font-weight: 900; text-transform: uppercase;
  letter-spacing: -0.02em; line-height: 1.05; margin: 2.5em 0 0.9em;
  color: rgb(var(--ink-rgb));
}
.paper-prose h1 { font-size: 1.7rem; }
.paper-prose h2 { font-size: 1.45rem; border-top: 1px solid rgb(var(--ink-rgb) / 0.9); padding-top: 1.2em; }
.paper-prose h3 { font-size: 1.15rem; }
.paper-prose h4 { font-size: 1rem; }
.paper-prose p { font-family: 'Inter',sans-serif; font-size: 1.02rem; line-height: 1.75;
  margin: 0 0 1.15em; color: rgb(var(--ink-rgb) / 0.85); text-wrap: pretty; }
.paper-prose strong { color: rgb(var(--ink-rgb)); }
.paper-prose em { font-style: italic; }
.paper-prose a { color: rgb(var(--ink-rgb)); text-decoration: underline; text-underline-offset: 2px; }
.paper-prose a:hover { color: #00FF41; }
.paper-prose blockquote { border-left: 4px solid #00FF41; margin: 1.5em 0; padding: 0.4em 0 0.4em 1.4em;
  font-style: italic; color: rgb(var(--ink-rgb) / 0.75); }
.paper-prose ul, .paper-prose ol { margin: 0 0 1.15em 1.4em; line-height: 1.7; color: rgb(var(--ink-rgb) / 0.85); }
.paper-prose ul { list-style: square; }
.paper-prose li { margin-bottom: 0.4em; }
.paper-prose hr { border: 0; border-top: 1px solid rgb(var(--ink-rgb) / 0.25); margin: 3em 0; }
.paper-prose table { width: 100%; border-collapse: collapse; font-size: 0.85rem; margin: 1.5em 0;
  font-family: 'Inter',sans-serif; }
.paper-prose th { font-family: 'JetBrains Mono',monospace; text-transform: uppercase; font-size: 0.7rem;
  letter-spacing: 0.08em; text-align: left; border-bottom: 2px solid rgb(var(--ink-rgb));
  padding: 0.6em 0.8em; color: rgb(var(--ink-rgb)); }
.paper-prose td { border-bottom: 1px solid rgb(var(--ink-rgb) / 0.2); padding: 0.6em 0.8em;
  vertical-align: top; color: rgb(var(--ink-rgb) / 0.85); }
.paper-prose .table-wrap, .paper-prose pre { overflow-x: auto; }
.paper-prose pre, .paper-prose code { font-family: 'JetBrains Mono',monospace; font-size: 0.85em;
  background: rgb(var(--surface-rgb) / 0.5); }
.paper-prose pre { padding: 1em; border: 1px solid rgb(var(--ink-rgb) / 0.25); margin: 1.5em 0; }
.paper-prose sup { font-size: 0.7em; }
.paper-prose .footnote { border-top: 2px solid rgb(var(--ink-rgb)); margin-top: 3em; padding-top: 1.5em;
  font-size: 0.85rem; }

/* long unbroken runs (ASCII dividers, URLs) must wrap on small screens */
.paper-prose p, .paper-prose li, .paper-prose td, .paper-prose h1, .paper-prose h2, .paper-prose h3 { overflow-wrap: anywhere; }
.paper-prose pre { overflow-x: auto; max-width: 100%; }
.paper-prose table { display: block; overflow-x: auto; max-width: 100%; }

/* Pull quotes: Libre Baskerville italic, green rule — the paper's serif accent */
.paper-prose blockquote {
  font-family: 'Libre Baskerville', serif; font-style: italic;
  font-size: 1.15rem; line-height: 1.7;
  border-left: 4px solid #00FF41; padding: 0.4em 0 0.4em 1.4em;
  margin: 2em 0; color: rgb(var(--ink-rgb));
}
.paper-prose blockquote p { font-family: inherit; font-size: inherit; }
.paper-prose h2 { font-family: 'Inter', sans-serif; font-weight: 900; letter-spacing: -0.02em; }
.paper-prose h3, .paper-prose h4 { font-family: 'Inter', sans-serif; font-weight: 900; }
.paper-prose strong { font-weight: 700; }
.paper-prose hr { border: none; border-top: 1px solid rgb(var(--ink-rgb) / 0.25); margin: 2.5em 0; }

/* Paper figures */
.axl-figure { margin: 2.5em 0; border: 1px solid rgb(var(--ink-rgb)); background: rgb(var(--surface-rgb) / 0.4); }
.axl-figure img { display: block; width: 100%; height: auto; }
.axl-figure figcaption { font-family: 'JetBrains Mono', monospace; font-size: 10px; text-transform: uppercase;
  letter-spacing: 0.08em; line-height: 1.6; padding: 0.75rem 1rem; border-top: 1px solid rgb(var(--ink-rgb));
  color: rgb(var(--ink-rgb) / 0.75); }
.axl-figure .fig-label { background: rgb(var(--ink-rgb)); color: rgb(var(--paper-rgb)); padding: 1px 6px; margin-right: 8px; }

/* Set pull quotes (injected by the builder — verbatim sentences from the paper) */
.paper-prose .axl-pull {
  font-family: 'Libre Baskerville', serif; font-style: italic;
  font-size: 1.45rem; line-height: 1.5; text-wrap: balance;
  margin: 2.75em 0; padding: 1.1em 0;
  border-top: 3px solid rgb(var(--ink-rgb)); border-bottom: 1px solid rgb(var(--ink-rgb) / 0.3);
  color: rgb(var(--ink-rgb));
  position: relative;
}
.paper-prose .axl-pull::before {
  content: "PULL_QUOTE"; display: block; margin-bottom: 0.9em;
  font-family: 'JetBrains Mono', monospace; font-style: normal; font-size: 9px;
  letter-spacing: 0.25em; color: #00A82D;
}
html[data-theme="dark"] .paper-prose .axl-pull::before { color: #00FF41; }
@media (min-width: 1024px) { .paper-prose .axl-pull { font-size: 1.6rem; } }
