/* ==========================================================================
   pinout.ninja — High-Contrast Breadboard Reference Sheet (@media print)
   ========================================================================== */

@media print {
  @page {
    margin: 10mm;
  }

  *,
  *::before,
  *::after {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    box-shadow: none !important;
  }

  html,
  body {
    background: #ffffff !important;
    color: #0f172a !important;
    font-size: 10pt;
    overflow: visible !important;
  }

  /* Hide interactive navigation, search, filter controls, solver form, and footers */
  .site-header,
  .variant-bar,
  .part-variant-tabs,
  .part-review-indicators,
  .part-header .toolbar-btn,
  .filter-toolbar,
  .mobile-tabs,
  .pin-popover,
  .solver-controls-area,
  .solver-reserved-section,
  .solver-export-area,
  .solver-export-box,
  .pin-lock-btn,
  #solver-section > h2,
  #solver-section > p,
  .solver-alert.alert-error,
  .onboard-resources-section,
  .pin-table-section,
  .site-footer {
    display: none !important;
  }

  .page-main {
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Clean Part Header */
  .part-header {
    border: none !important;
    border-bottom: 1.5pt solid #0f172a !important;
    border-radius: 0 !important;
    padding: 0 0 6pt 0 !important;
    margin-bottom: 8pt !important;
  }

  .part-header h1 {
    font-size: 16pt !important;
  }

  /* Always display Diagram scaled cleanly to page width */
  #diagram-section,
  .diagram-box {
    display: block !important;
    border: none !important;
    background: transparent !important;
    break-inside: avoid;
  }

  #diagram-viewport {
    display: block !important;
    border: none !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  #diagram-viewport .pinout-svg {
    width: 100% !important;
    min-width: 0 !important;
    max-height: 175mm !important;
    height: auto !important;
  }

  /* Active Solved Assignment Table (only shown when #solver-assignment-section is not [hidden]) */
  #solver-section,
  .solver-panel,
  .solver-output-area {
    margin-top: 6pt !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
  }

  .solver-table-heading {
    font-size: 10.5pt !important;
    margin: 6pt 0 4pt !important;
  }

  .solver-summary-table {
    width: 100% !important;
    font-size: 8.5pt !important;
    border: 0.75pt solid #94a3b8 !important;
    margin-bottom: 6pt !important;
    break-inside: avoid;
  }

  .solver-summary-table th,
  .solver-summary-table td {
    padding: 3pt 5pt !important;
    border-bottom: 0.5pt solid #cbd5e1 !important;
  }

  .solver-pin-select {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    min-width: 0 !important;
    font: inherit !important;
    color: inherit !important;
  }

  .print-lock-indicator {
    display: inline !important;
    font-family: var(--font-mono);
    font-size: 7.5pt;
    color: #334155;
  }

  /* Compact Warning Legend at bottom of print sheet */
  .print-warning-legend:not(:empty) {
    display: block !important;
    margin-top: 8pt;
    padding-top: 6pt;
    border-top: 0.75pt solid #cbd5e1;
    font-size: 8.2pt;
    break-inside: avoid;
  }

  .print-warning-legend-title {
    font-weight: 700;
    font-size: 8.8pt;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-bottom: 3pt;
  }

  .print-warning-legend-list {
    margin: 0;
    padding-left: 14pt;
    columns: 2;
    column-gap: 16pt;
  }

  .print-warning-legend-list li {
    margin-bottom: 2pt;
    break-inside: avoid;
  }
}
