/* Print / PDF stylesheet — see docs/THEME.md
   Black text, white background. Status via label + border weight, not fill.
   Looks like a legal document, not an app screenshot. */

@media print {
  @page {
    margin: 0.75in;
  }

  html,
  body {
    background: #fff !important;
    background-image: none !important;
    color: #000 !important;
    font-size: 11pt;
    line-height: 1.45;
  }

  .site-header,
  .site-footer,
  .nav,
  .btn,
  .theme-toggle,
  .hero__actions,
  .flash,
  .toolbar,
  form.stack,
  .brand__mark,
  .section__media,
  .no-print {
    display: none !important;
  }

  .page,
  .site-header__inner,
  .site-footer__inner,
  .hero__inner {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
  }

  .surface,
  .answer-card,
  .hero,
  .section-stack {
    border: none !important;
    border-radius: 0;
    background: #fff !important;
    padding: 0;
    box-shadow: none;
  }

  .hero::after {
    display: none !important;
  }

  .def-list {
    border-color: #000 !important;
  }

  .def-list dt,
  .def-list dd {
    color: #000 !important;
  }

  .print-doc-header {
    display: flex !important;
    justify-content: space-between;
    align-items: baseline;
    border-bottom: 2px solid #000;
    padding-bottom: 0.5rem;
    margin-bottom: 1.25rem;
    font-size: 10pt;
  }

  .print-doc-header__brand {
    font-weight: 700;
    color: #000 !important;
    font-size: 12pt;
  }

  .print-doc-header__brand span {
    color: #000 !important;
  }

  a {
    color: #000 !important;
    text-decoration: underline;
  }

  h1,
  h2,
  h3,
  .eyebrow,
  .lede,
  .muted,
  .disclaimer {
    color: #000 !important;
  }

  .eyebrow {
    letter-spacing: 0.06em;
  }

  .status-badge {
    background: #fff !important;
    color: #000 !important;
    border: 2px solid #000 !important;
    border-radius: 0;
    padding: 0.15rem 0.45rem;
    font-weight: 700;
  }

  .status-badge--compoundable {
    border-width: 2px;
  }

  .status-badge--restricted {
    border-width: 3px;
  }

  .status-badge--under_review {
    border-style: dashed;
    border-width: 2px;
  }

  .status-badge--unclear {
    border-width: 1px;
  }

  .status-badge__icon {
    /* Keep icon for B&W print recognition */
    color: #000 !important;
  }

  table.data th,
  table.data td {
    border-bottom: 1px solid #000;
    color: #000 !important;
    background: #fff !important;
  }

  .disclaimer {
    border-top: 1px solid #000;
    margin-top: 1.5rem;
  }
}

/* Screen-hidden print chrome — shown when printing */
.print-doc-header {
  display: none;
}

/* WeasyPrint / dedicated PDF document class (used by generators) */
.pdf-document {
  color: #000;
  background: #fff;
  font-family: "Inter", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 11pt;
  line-height: 1.45;
}

.pdf-document .pdf-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  border-bottom: 2px solid #000;
  padding-bottom: 8pt;
  margin-bottom: 16pt;
}

.pdf-document .pdf-brand {
  font-weight: 700;
  font-size: 12pt;
}

.pdf-document .pdf-timestamp {
  font-size: 9pt;
}

.pdf-document .pdf-status {
  display: inline-block;
  border: 2px solid #000;
  padding: 2pt 6pt;
  font-weight: 700;
  background: #fff;
  color: #000;
}

.pdf-document .pdf-status--restricted {
  border-width: 3pt;
}

.pdf-document .pdf-status--under_review {
  border-style: dashed;
}

.pdf-document .pdf-status--unclear {
  border-width: 1pt;
}
