/* ==========================================================================
   Print Stylesheet - TipOutCalculator.com
   Clean Shift Receipt and Audit Documentation
   ========================================================================== */

@media print {
  /* Global print reset */
  *,
  *::before,
  *::after {
    background: transparent !important;
    color: #000000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  html, body {
    background: #ffffff !important;
    color: #000000 !important;
    font-size: 12pt;
    line-height: 1.4;
    margin: 0;
    padding: 0;
  }

  /* Hide interactive, navigational, advertising, and action elements */
  .site-header,
  .site-footer,
  .mobile-menu-toggle,
  .mobile-nav-drawer,
  .mobile-nav-backdrop,
  .card-actions,
  .btn-secondary,
  .btn-action-primary,
  .btn-action-secondary,
  .print-modal-actions,
  .no-print,
  .ad-slot-wrapper,
  .adsbygoogle,
  .theme-picker,
  .country-select-badge,
  .segmented-control,
  .freq-pill-bar,
  .advanced-toggle,
  .btn-remove-role {
    display: none !important;
    visibility: hidden !important;
  }

  /* When printing from the Shift Receipt Modal */
  body:has(#printReportModal[style*="display: flex"]) > *:not(#printReportModal) {
    display: none !important;
  }

  .print-modal-overlay {
    position: static !important;
    background: transparent !important;
    padding: 0 !important;
    display: block !important;
  }

  .print-modal-box {
    box-shadow: none !important;
    border: none !important;
    padding: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .print-receipt-paper {
    border: 1px dashed #000000 !important;
    background: #ffffff !important;
    padding: 1.5rem !important;
    margin: 0 auto !important;
    max-width: 480px !important;
    font-family: 'Courier New', Courier, monospace !important;
    font-size: 10pt !important;
    line-height: 1.5 !important;
    page-break-inside: avoid;
  }

  .print-receipt-paper h3 {
    font-size: 13pt !important;
    font-weight: bold !important;
    text-align: center !important;
    margin-bottom: 0.25rem !important;
  }

  .print-receipt-paper hr {
    border: none !important;
    border-top: 1px dashed #000000 !important;
    margin: 8px 0 !important;
  }

  /* General Page Printing (if user prints full page) */
  .container,
  .main-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .calc-card,
  .result-card,
  .info-card,
  .state-notice-card,
  .detail-card {
    border: 1px solid #cccccc !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    page-break-inside: avoid;
    margin-bottom: 1rem !important;
    padding: 1rem !important;
  }

  table,
  .benchmark-table {
    border-collapse: collapse !important;
    width: 100% !important;
  }

  table th,
  table td,
  .benchmark-table th,
  .benchmark-table td {
    border: 1px solid #dddddd !important;
    padding: 6px 10px !important;
    font-size: 9pt !important;
  }

  a[href]::after {
    content: "" !important; /* Don't display ugly raw URLs in print */
  }
}
