/* ==========================================================================
   PodTalk Studio - Global Print Stylesheet (Clean A4 PDF Export)
   Typography: Epilogue (Headings/Numbers) & Golos Text (Body)
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Epilogue:wght@600;700;800&family=Golos+Text:wght@400;500;600;700&display=swap');

@page {
  size: A4 portrait;
  margin: 10mm 14mm 10mm 14mm;
}

/* On Screen: Hide print-only elements */
.print-only {
  display: none !important;
}

@media print {
  /* Hide all interactive website chrome & navigation */
  .site-header,
  .mobile-menu-toggle,
  .mobile-drawer,
  .site-footer,
  .btn-back-to-top,
  .setup-actions,
  .policy-page-header,
  .policy-footer-note,
  .policy-alert-box,
  .alert,
  .admin-sidebar,
  .admin-topbar,
  .admin-topbar-actions,
  .admin-menu-toggle,
  .btn,
  .btn-primary,
  .btn-secondary,
  .btn-action,
  .btn-settle-balance,
  .btn-action-danger,
  .no-print,
  .hold-active-banner a.btn,
  .hold-active-banner button,
  form button[type="submit"] {
    display: none !important;
  }

  /* Show print-only header / brand elements */
  .print-only {
    display: block !important;
  }

  /* Canvas & Base Resets */
  html, body {
    background: #FFFFFF !important;
    color: #0F172A !important;
    font-family: 'Golos Text', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    font-size: 10pt !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  #main-content,
  .policy-page-content,
  .container,
  .policy-card {
    background: #FFFFFF !important;
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  /* Print Header Banner */
  .print-header {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    border-bottom: 2px solid #5C3A82 !important;
    padding-bottom: 12px !important;
    margin-bottom: 16px !important;
  }

  .print-brand-col {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
    gap: 3px !important;
    max-width: 60% !important;
  }

  .print-logo-img {
    height: 34px !important;
    width: auto !important;
    max-width: 160px !important;
    object-fit: contain !important;
    object-position: left center !important;
    align-self: flex-start !important;
    display: block !important;
    margin: 0 0 4px 0 !important;
  }

  .print-brand-title {
    font-family: 'Epilogue', sans-serif !important;
    font-size: 16pt !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    color: #5C3A82 !important;
    margin: 0 !important;
  }

  .print-brand-subtitle {
    font-size: 8.5pt !important;
    color: #475569 !important;
    line-height: 1.35 !important;
  }

  .print-brand-contact {
    font-size: 8.5pt !important;
    color: #64748B !important;
    margin-top: 2px !important;
  }

  .print-doc-meta {
    text-align: right !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
  }

  .print-doc-type {
    font-family: 'Epilogue', sans-serif !important;
    font-size: 11pt !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #5C3A82 !important;
  }

  .print-doc-ref {
    font-family: 'Epilogue', sans-serif !important;
    font-size: 10pt !important;
    font-weight: 700 !important;
    color: #0F172A !important;
  }

  .print-doc-date {
    font-size: 8.5pt !important;
    color: #64748B !important;
  }

  .print-doc-status {
    font-family: 'Epilogue', sans-serif !important;
    font-size: 8.5pt !important;
    font-weight: 700 !important;
    color: #065F46 !important;
    text-transform: uppercase !important;
    margin-top: 2px !important;
  }

  /* Headings */
  h2 {
    font-family: 'Epilogue', sans-serif !important;
    font-size: 11pt !important;
    font-weight: 700 !important;
    color: #5C3A82 !important;
    border-bottom: 1px solid #E2E8F0 !important;
    padding-bottom: 3px !important;
    margin-top: 14px !important;
    margin-bottom: 8px !important;
    page-break-after: avoid !important;
    break-after: avoid !important;
  }

  /* Receipt Summary Details Grid */
  .receipt-details-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    margin-bottom: 14px !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .receipt-card-box {
    background: #F8FAFC !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 6px !important;
    padding: 10px 12px !important;
  }

  .receipt-card-title {
    font-family: 'Epilogue', sans-serif !important;
    font-size: 9.5pt !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    color: #5C3A82 !important;
    margin-bottom: 6px !important;
    border-bottom: 1px solid #E2E8F0 !important;
    padding-bottom: 3px !important;
  }

  .receipt-line {
    font-size: 9pt !important;
    color: #475569 !important;
    line-height: 1.45 !important;
  }

  .receipt-line strong {
    color: #0F172A !important;
  }

  /* Checklists & Guidelines */
  .policy-bullet-list {
    margin: 0 0 12px 0 !important;
    padding-left: 18px !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .policy-bullet-list li {
    font-size: 8.5pt !important;
    color: #334155 !important;
    margin-bottom: 4px !important;
    line-height: 1.35 !important;
  }

  /* Contact / Location Box */
  .policy-contact-box {
    border: 1px solid #E2E8F0 !important;
    border-radius: 6px !important;
    padding: 8px 12px !important;
    background: #F8FAFC !important;
    margin-bottom: 12px !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .policy-contact-title {
    font-family: 'Epilogue', sans-serif !important;
    font-size: 9.5pt !important;
    font-weight: 700 !important;
    color: #0F172A !important;
  }

  .policy-contact-address {
    font-size: 8.5pt !important;
    color: #475569 !important;
    margin-top: 2px !important;
  }

  .policy-contact-details {
    display: flex !important;
    gap: 16px !important;
    margin-top: 4px !important;
    font-size: 8.5pt !important;
    color: #334155 !important;
  }

  /* Print Footer Seal */
  .print-footer-seal {
    border-top: 1px dashed #CBD5E1 !important;
    padding-top: 10px !important;
    margin-top: 14px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    font-size: 7.5pt !important;
    color: #64748B !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .print-footer-seal strong {
    color: #0F172A !important;
  }
}
