@media print {
  /* FIRST: Force EVERYTHING to white background */
  * {
    background: white !important;
    background-color: white !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    outline: none !important;
  }

  /* Reset HTML and BODY specifically */
  html {
    background: white !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body {
    background: white !important;
    margin: 0 !important;
    padding: 0 !important;
    color: black !important;
  }

  /* Hide everything first */
  body * {
    visibility: hidden;
    background: white !important;
  }

  /* Show only print area */
  #print-area,
  #print-area * {
    visibility: visible;
    background: white !important;
  }

  #print-area {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: white !important;
    border: none !important;
    width: 100% !important;
    height: 100% !important;
  }

  /* Print container - ULTRA COMPACT */
  .print-container {
    max-width: 200mm !important;
    margin: 5mm !important;
    padding: 5mm !important;
    font-family: Arial, sans-serif !important;
    background: white !important;
    border: none !important;
  }

  /* Company header - TINY */
  .print-header {
    text-align: center !important;
    border-bottom: 0.5pt solid #999 !important;
    padding-bottom: 2mm !important;
    margin-bottom: 3mm !important;
    background: white !important;
  }

  .print-logo {
    height: 8mm !important;
    margin-bottom: 1mm !important;
  }

  .print-company {
    font-size: 9pt !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    color: black !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Company contact info - TINY */
  .print-header div[style*="font-size"] {
    font-size: 6pt !important;
    color: #555 !important;
    line-height: 1.1 !important;
    margin-top: 1mm !important;
  }

  /* Title - SMALLER */
  .print-title {
    font-size: 10pt !important;
    margin: 3mm 0 !important;
    padding: 0 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    color: black !important;
    font-weight: bold !important;
    line-height: 1 !important;
  }

  /* Remove ALL containers */
  .confirmation-container {
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: white !important;
    border: none !important;
    text-align: left !important;
  }

  .confirmation-card {
    background: white !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }

  /* Booking number - TINY */
  .booking-number-section {
    text-align: center !important;
    margin: 3mm 0 !important;
    padding: 2mm 0 !important;
    border-bottom: 0.5pt solid #bbb !important;
    background: white !important;
  }

  .booking-number-section > div:first-child {
    font-size: 6pt !important;
    text-transform: uppercase !important;
    color: #777 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
  }

  #booking-number {
    font-size: 9pt !important;
    font-weight: bold !important;
    color: black !important;
    line-height: 1 !important;
    margin: 1mm 0 0 0 !important;
    padding: 0 !important;
  }

  /* Section headers - TINY */
  .detail-section {
    margin: 0 0 3mm 0 !important;
    padding: 0 !important;
    border: none !important;
    background: white !important;
  }

  .detail-section h4 {
    font-size: 7pt !important;
    border-bottom: 0.5pt solid #bbb !important;
    padding: 0 0 0.5mm 0 !important;
    margin: 0 0 1mm 0 !important;
    text-transform: uppercase !important;
    color: black !important;
    font-weight: bold !important;
    line-height: 1 !important;
  }

  /* Labels - ULTRA TINY */
  span[style*="color: var(--clr-primary-a40)"] {
    font-size: 6pt !important;
    color: #777 !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
  }

  /* Values - TINY */
  .detail-section strong {
    font-size: 7pt !important;
    color: black !important;
    font-weight: normal !important;
    line-height: 1.1 !important;
  }

  /* Detail content - COMPACT */
  #confirmation-customer-details,
  #confirmation-vehicle-details,
  #confirmation-appointment-details {
    font-size: 7pt !important;
    line-height: 1.2 !important;
    color: black !important;
    background: white !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Reduce BR spacing */
  br {
    line-height: 0.5 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Services table - ULTRA COMPACT */
  #confirmation-services {
    margin: 0 !important;
    padding: 0 !important;
    background: white !important;
  }

  #confirmation-services table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 1mm 0 !important;
    padding: 0 !important;
    background: white !important;
    border: none !important;
  }

  #confirmation-services thead tr {
    border: none !important;
    border-bottom: 0.5pt solid #999 !important;
  }

  #confirmation-services th {
    border: none !important;
    padding: 0.5mm 0 !important;
    text-align: left !important;
    font-weight: normal !important;
    text-transform: uppercase !important;
    font-size: 6pt !important;
    color: #777 !important;
    background: white !important;
    line-height: 1 !important;
  }

  #confirmation-services th:last-child {
    text-align: right !important;
  }

  #confirmation-services td {
    border: none !important;
    border-bottom: 0.25pt solid #eee !important;
    padding: 0.8mm 0 !important;
    font-size: 7pt !important;
    color: black !important;
    background: white !important;
    line-height: 1 !important;
  }

  #confirmation-services td:last-child {
    text-align: right !important;
  }

  #confirmation-services tbody tr:last-child td {
    border-bottom: none !important;
  }

  #confirmation-services tr[style*="border-top"] td {
    border-top: 0.5pt solid #999 !important;
    padding-top: 1mm !important;
  }

  #confirmation-services strong {
    font-weight: bold !important;
    font-size: 7pt !important;
  }

  /* Total amount box - COMPACT */
  div[style*="background: var(--clr-surface-a20)"] {
    margin: 3mm 0 !important;
    padding: 2mm !important;
    border: 0.5pt solid #999 !important;
    text-align: center !important;
    background: white !important;
  }

  /* Total label */
  div[style*="text-transform: uppercase"] {
    font-size: 6pt !important;
    text-transform: uppercase !important;
    color: #777 !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Total amount */
  #confirmation-total {
    font-size: 10pt !important;
    font-weight: bold !important;
    color: black !important;
    line-height: 1 !important;
    margin: 1mm 0 !important;
    padding: 0 !important;
  }

  /* Payment info */
  div[style*="margin-top: 0.5rem"] {
    font-size: 6pt !important;
    color: #777 !important;
    margin: 0.5mm 0 0 0 !important;
    line-height: 1 !important;
  }

  /* Footer - TINY */
  .print-footer {
    margin-top: 3mm !important;
    padding-top: 1mm !important;
    border-top: 0.5pt solid #bbb !important;
    text-align: center !important;
    font-size: 6pt !important;
    color: #777 !important;
    background: white !important;
    line-height: 1.1 !important;
  }

  .print-footer p {
    margin: 0.5mm 0 !important;
    padding: 0 !important;
  }

  /* Hide all non-print elements */
  .no-print,
  .btn,
  .header,
  .booking-steps,
  button,
  nav,
  .mobile-menu-toggle,
  [onclick],
  div[style*="font-size: 4rem"],
  div[style*="padding: 2rem 0"],
  div[style*="display: flex"] {
    display: none !important;
  }

  /* Ensure text colors */
  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    color-adjust: exact !important;
  }

  /* Remove any remaining backgrounds */
  div[class*="surface"],
  div[class*="container"],
  div[class*="card"] {
    background: white !important;
    background-color: white !important;
    border: none !important;
  }

  /* Page setup */
  @page {
    margin: 0 !important;
    padding: 0 !important;
    size: A4 !important;
  }

  /* Ensure no page margins */
  html,
  body {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
}
