/* ============================================================
   PRINT — clean A4 layout for PDF export via window.print()
   ============================================================ */

@media print {
  /* ── Hide everything except results ───────────────────── */
  .app-header,
  .restore-banner,
  .banner-wrap,
  .sidebar,
  .stepper,
  .stepper--mobile,
  .stepper-wrap,
  .stepper-mobile,
  .status-pill,
  .wizard-nav,
  .ad-zone,
  .results-actions,
  .breakdown__toggle,
  .methodology__toggle,
  .methodology,
  .chart-section,
  .day-toggle-btn,
  .results-new-calc,
  .btn-ghost,
  body > script,
  .step__eyebrow,
  .results-hero__sub {
    display: none !important;
  }

  @page {
    size: A4;
    margin: 10mm 12mm 10mm;
  }

  * {
    box-sizing: border-box;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  html, body {
    font-size: 11px;
    background: white !important;
    color: #1E293B !important;
    zoom: 0.78;
  }

  .app-layout {
    display: block !important;
    padding: 0 !important;
    max-width: none !important;
  }

  .step-card {
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
  }

  .results-hero {
    background: #F0F4F8 !important;
    border: 1px solid #E2E8F0 !important;
    break-inside: avoid;
    padding: 4mm 6mm !important;
    margin-bottom: 4mm !important;
  }

  .results-hero__days {
    font-size: 36px !important;
    color: #006D77 !important;
  }

  .results-hero__hrs,
  .results-hero__hours {
    font-size: 13px !important;
  }

  .breakdown {
    display: block !important;
    break-inside: avoid;
    margin-bottom: 4mm !important;
  }

  .breakdown > *:not(summary) {
    display: block !important;
  }

  .breakdown__table {
    display: table !important;
    width: 100% !important;
  }

  .breakdown__body {
    display: flex !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .callout--warning {
    break-inside: avoid;
    background: #FEF3C7 !important;
    border: 1px solid #D97706 !important;
    padding: 3mm 4mm !important;
    font-size: 9px !important;
  }

  .step-card::after {
    content: 'Estimation only — verify with your HR department and employment contract. Generated by holidayhours.co.uk';
    display: block;
    font-size: 8px;
    color: #94A3B8;
    margin-top: 4mm;
    padding-top: 3mm;
    border-top: 1px solid #E2E8F0;
  }
}
