@media print {
  @page {
    size: A4 portrait;
    margin: 14mm 12mm 16mm 12mm;
    @top-left {
      content: "PhishDestroy · Steam Dossier · WORKING DRAFT";
      font-family: ui-monospace, "JetBrains Mono", Consolas, monospace;
      font-size: 7pt;
      color: #444444;
    }
    @top-right {
      content: "14 Oct 2026";
      font-family: ui-monospace, "JetBrains Mono", Consolas, monospace;
      font-size: 7pt;
      color: #444444;
    }
    @bottom-left {
      content: "PHISHDESTROY FORENSIC INVESTIGATION · STEAM / CASE FILE 001";
      font-family: ui-monospace, "JetBrains Mono", Consolas, monospace;
      font-size: 6.5pt;
      color: #555555;
    }
    @bottom-right {
      content: "Page " counter(page) " of " counter(pages);
      font-family: ui-monospace, "JetBrains Mono", Consolas, monospace;
      font-size: 6.5pt;
      color: #555555;
    }
  }

  body::before {
    content: "DRAFT";
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
    font-size: 110pt;
    font-weight: 900;
    color: rgba(0, 0, 0, 0.035) !important;
    letter-spacing: 0.25em;
    pointer-events: none;
    z-index: 99999;
  }

  *, *::before, *::after {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
    backdrop-filter: none !important;
    animation: none !important;
    transition: none !important;
  }

  html, body {
    background: #ffffff !important;
    background-image: none !important;
    color: #000000 !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
    font-size: 8.5pt !important;
    line-height: 1.42 !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Cover page in print */
  .print-cover-page {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    min-height: 85vh !important;
    page-break-after: always !important;
    break-after: page !important;
    text-align: center !important;
    padding: 60px 40px !important;
    border: 1pt solid #111 !important;
    margin: 20px auto 40px !important;
  }
  .print-cover-badge {
    font-family: ui-monospace, "JetBrains Mono", Consolas, monospace !important;
    font-size: 8pt !important;
    letter-spacing: .15em !important;
    font-weight: 700 !important;
    color: #881337 !important;
    margin-bottom: 24px !important;
  }
  .print-cover-title {
    font-size: 26pt !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    color: #000 !important;
    margin: 0 0 14px !important;
    letter-spacing: -0.03em !important;
  }
  .print-cover-subtitle {
    font-size: 11pt !important;
    line-height: 1.4 !important;
    color: #374151 !important;
    max-width: 60ch !important;
    margin: 0 0 40px !important;
  }
  .print-cover-meta {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 500px !important;
    border-top: 1pt solid #ccc !important;
    padding-top: 20px !important;
    text-align: left !important;
  }
  .print-cover-meta-item span {
    display: block !important;
    font-size: 6.5pt !important;
    font-family: ui-monospace, "JetBrains Mono", Consolas, monospace !important;
    color: #6b7280 !important;
    margin-bottom: 4px !important;
  }
  .print-cover-meta-item strong {
    font-size: 8pt !important;
    color: #000 !important;
  }

  /* Table of Contents in print */
  .print-toc-page {
    page-break-after: always !important;
    break-after: page !important;
    padding: 20px 0 !important;
  }
  .print-toc-title {
    font-size: 14pt !important;
    font-weight: 800 !important;
    margin-bottom: 16px !important;
    border-bottom: 1pt solid #000 !important;
    padding-bottom: 6px !important;
  }
  .print-toc-item {
    display: flex !important;
    justify-content: space-between !important;
    padding: 4px 0 !important;
    border-bottom: 0.5pt dotted #ccc !important;
    font-size: 8pt !important;
  }

  header.dossier-report-header,
  header.casework-masthead,
  header.room-header,
  .topbar,
  #dossier-hud,
  #dossier-navigation-dialog,
  .hud-mobile-toggle,
  .dossier-backtop,
  .pd-to-top,
  .pd-intel-bar,
  .pd-manifesto,
  #pd-mf,
  .dossier-mobile-draft-bar,
  .screen-toolbar,
  nav.dossier-index,
  .dossier-reading-progress,
  .reading-progress,
  .hud-hidden:not(section):not(article),
  #legal-drawer,
  #legal-overlay,
  .platform-dialog,
  .dialog-overlay,
  .toast,
  .reading-toast,
  .dossier-skip,
  .interactive-controls,
  .p2-chapters,
  .p2-filters,
  .p2-market-control,
  .p2-button,
  .p2-simulator-controls,
  .simulator-chrome,
  .casework-cover-actions,
  .dossier-entry-points,
  .case-contrast-source,
  .case-contrast-dots,
  .dossier-contents-button,
  #dossier-contents,
  .no-print,
  button,
  select,
  input[type="button"],
  input[type="submit"] {
    display: none !important;
  }

  main,
  #dossier-main,
  .casework-main,
  .container,
  .portal-container,
  .max-w-\\[110rem\\] {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
  }

  section,
  article,
  .casework-section,
  .reading-chapter,
  .hud-hidden {
    display: block !important;
    visibility: visible !important;
    content-visibility: visible !important;
    contain-intrinsic-size: none !important;
    contain: none !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    margin-bottom: 20px !important;
    padding-top: 10px !important;
    clear: both !important;
  }

  details {
    display: block !important;
  }
  details > summary {
    font-weight: bold !important;
    cursor: default !important;
    margin-bottom: 6px !important;
  }
  details > * {
    display: block !important;
  }

  .card,
  .panel,
  .casework-panel,
  .casework-sheet,
  .source-preview,
  .legal-paper,
  .wsgc-address,
  .dsar-paper,
  .pd-tldr,
  .pd-finding-card,
  div[class*="bg-gray-950"],
  div[class*="bg-black"],
  div[class*="bg-\\[#"],
  div[class*="bg-slate-"],
  article {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    color: #000000 !important;
    border: 0.5pt solid #888888 !important;
    border-radius: 2px !important;
  }

  h1 {
    font-size: 18pt !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    color: #000000 !important;
    margin: 12px 0 8px !important;
  }
  h2, .casework-section-title {
    font-size: 13.5pt !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    color: #000000 !important;
    border-bottom: 1pt solid #000000 !important;
    padding-bottom: 3px !important;
    margin: 16px 0 8px !important;
    break-after: avoid !important;
    page-break-after: avoid !important;
  }
  h3 {
    font-size: 11pt !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    color: #000000 !important;
    margin: 10px 0 6px !important;
    break-after: avoid !important;
    page-break-after: avoid !important;
  }
  h4, h5, h6 {
    font-size: 9.5pt !important;
    font-weight: 700 !important;
    color: #000000 !important;
    margin: 8px 0 4px !important;
    break-after: avoid !important;
    page-break-after: avoid !important;
  }
  p, span, li, dt, dd, blockquote, div {
    color: #111111 !important;
  }
  .text-gray-300, .text-gray-400, .text-gray-500, .text-slate-400, .text-zinc-400 {
    color: #2b2b2b !important;
  }
  strong, b, .font-bold {
    font-weight: 700 !important;
    color: #000000 !important;
  }
  code, pre, kbd, samp {
    font-family: ui-monospace, "JetBrains Mono", Consolas, monospace !important;
    font-size: 7.5pt !important;
    background: #f4f4f4 !important;
    color: #000000 !important;
    border: 0.5pt solid #cccccc !important;
    border-radius: 2px !important;
    padding: 1px 3px !important;
  }
  pre {
    padding: 6px 8px !important;
    white-space: pre-wrap !important;
    word-break: break-all !important;
  }
  a {
    color: #000000 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
  }

  /* Visible URL for regulators */
  a[href^="http"]:not(.no-print-url)::after {
    content: " (" attr(href) ")";
    font-size: 7pt;
    color: #4b5563;
    word-break: break-all;
  }

  table,
  .svt-table,
  .ledger-table,
  .comparison {
    width: 100% !important;
    min-width: 0 !important;
    border-collapse: collapse !important;
    font-size: 7.5pt !important;
    line-height: 1.35 !important;
    margin: 10px 0 16px !important;
  }
  thead {
    display: table-header-group !important;
  }
  tfoot {
    display: table-footer-group !important;
  }
  tr {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }
  th, td {
    border: 0.5pt solid #777777 !important;
    padding: 4px 6px !important;
    color: #000000 !important;
    background: #ffffff !important;
    vertical-align: top !important;
  }
  th {
    background: #eeeeee !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: 7pt !important;
    letter-spacing: 0.04em !important;
  }
  .badge, [class*="badge"] {
    display: inline-block !important;
    border: 0.5pt solid #000000 !important;
    background: transparent !important;
    color: #000000 !important;
    font-family: ui-monospace, "JetBrains Mono", Consolas, monospace !important;
    font-size: 6.5pt !important;
    font-weight: bold !important;
    padding: 1px 4px !important;
  }
  .break-inside-avoid,
  .avoid-break,
  .card,
  .panel,
  .la-card,
  .tl-entry,
  .room-metrics > div,
  .casework-sheet {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }
}
