/* ==========================================================================
   print.css — AwareFlow Static Site
   Purpose: Clean, legible print layout for policy/story pages.
   Loaded via media="print" from _layouts/default.html (English) and
   inline <link> in legacy translated pages. Values hardcoded by design:
   print is intentionally monochrome.
   ========================================================================== */

@page {
  margin: 15mm 12mm;
}

@media print {
  /* Base */
  html {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  body {
    background: #ffffff !important;
    color: #000000 !important;
    font: 12pt/1.6 Georgia, serif;
    margin: 0;
  }

  /* Hide chrome / decorative elements.
     English BEM + legacy translated classes grouped together. */
  header,
  nav,
  footer,
  .header,
  .footer,
  .header__logo,
  .hero__logo,
  .logo,
  .site-banner,
  .cta,
  .cta-bar,
  .btn,
  .btn-row,
  .skip-link,
  .nav-toggle {
    display: none !important;
  }

  /* Strip hero gradient and glass chrome; keep the title and subtitle. */
  .hero {
    background: none !important;
    padding: 0 !important;
    margin: 0 0 1em !important;
    border-radius: 0 !important;
  }

  .hero__inner {
    background: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
  }

  .hero__subtitle,
  .subtitle {
    color: #000000 !important;
    font-style: italic;
  }

  /* Content container */
  main,
  .content-container {
    max-width: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #ffffff !important;
  }

  /* Content cards: strip borders/backgrounds, keep rhythm.
     .section = English BEM. section.box / .box = legacy translated pages. */
  .section,
  section.box,
  .box {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    margin: 0 0 1.6em !important;
    padding: 0 !important;
    max-width: none !important;
    break-inside: avoid;
  }

  /* Diagram (how-awareflow-works): strip chrome, keep node text. */
  .diagram__node,
  .diagram__node--highlight {
    background: none !important;
    border: 1px solid #000000 !important;
    box-shadow: none !important;
    page-break-inside: avoid;
  }

  .diagram__arrow {
    background: #000000 !important;
  }

  .diagram__arrow::after {
    border-top-color: #000000 !important;
  }

  /* Headings & typography */
  h1,
  h2,
  h3 {
    color: #000000 !important;
    page-break-after: avoid;
  }

  h1 + p,
  h2 + p,
  h3 + p {
    page-break-before: avoid;
  }

  p,
  ul,
  ol {
    orphans: 3;
    widows: 3;
  }

  /* Links: show URLs for external links only */
  a {
    color: #000000 !important;
    text-decoration: underline;
  }

  a[href^="#"]::after,
  a[href^="mailto:"]::after,
  a[href^="tel:"]::after,
  a[href^="javascript:"]::after {
    content: "";
  }

  a[href^="http"]::after {
    content: " (" attr(href) ")";
    font-size: 0.9em;
    word-break: break-all;
  }

  /* Images that remain (e.g., inside content) */
  img {
    max-width: 100% !important;
    height: auto !important;
    filter: none !important;
  }

  /* Code & preformatted text */
  pre,
  code,
  kbd,
  samp {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important;
    color: #000000 !important;
  }

  pre {
    white-space: pre-wrap;
    word-wrap: break-word;
    border: 1px solid #000000;
    padding: 0.6em;
  }

  /* Tables */
  table {
    width: 100%;
    border-collapse: collapse;
  }

  th,
  td {
    border: 1px solid #000000;
    padding: 0.4em 0.6em;
  }

  thead {
    display: table-header-group; /* repeat headers on new pages */
  }

  tr {
    break-inside: avoid;
  }

  /* FAQ accordions: flatten so all answers print open. */
  .faq__summary {
    cursor: default;
    padding: 0.5em 0 !important;
  }

  .faq__summary::after {
    content: "" !important;
  }

  .faq__item {
    break-inside: avoid;
  }

  /* RTL support */
  html[dir="rtl"] body {
    direction: rtl;
    text-align: right;
  }
}
