  /* Vendored locally from npm @fontsource/inter (latin subset, weights
     300–800, woff2 only) so no request ever goes to fonts.googleapis.com
     / fonts.gstatic.com — see ./fonts/inter.css and ./fonts/files/. */
  @import url('./fonts/inter.css');
  body { font-family: 'Inter', sans-serif; }
  .scrollbar-hide::-webkit-scrollbar { display: none; }
  .scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; }
  .fade-in { animation: fadeIn 0.3s ease-out; }
  @keyframes fadeIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
  .modal-enter { animation: modalIn 0.2s ease-out; }
  @keyframes modalIn { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } }

  /* Particulars Wrapping Style */
  .particulars-text {
    white-space: normal !important;
    word-break: break-word;
    line-height: 1.3;
    font-size: 0.75rem;
    min-height: 2.6em;
    display: block;
    max-width: 380px;
  }

  .breakdown-text {
    max-width: 220px;
  }

  .fleet-table {
    table-layout: auto;
    width: 100%;
    min-width: 720px;
  }
  @media (max-width: 480px) {
    .fleet-table { min-width: 640px; }
  }

  /* Toggle Switch Style */
  .toggle-checkbox:checked {
    right: 0;
    border-color: #f59e0b;
  }
  .toggle-checkbox:checked + .toggle-label {
    background-color: #f59e0b;
  }

  /* ===== PRINT STYLES ===== */
  @media print {
    @page { size: A4 landscape; margin: 10mm; }
    body { background: white !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    .no-print { display: none !important; }
    .print-only { display: block !important; }
    main { max-width: 100% !important; padding: 0 !important; margin: 0 !important; }
    .shadow, .shadow-sm, .shadow-lg, .shadow-md { box-shadow: none !important; }
    .border, .border-gray-200 { border-color: #cbd5e1 !important; }
    .rounded-xl { border-radius: 4px !important; }

    #dashboardRow { grid-template-columns: repeat(5, 1fr) !important; gap: 8px !important; margin-bottom: 12px !important; page-break-inside: avoid !important; }
    .dash-card { padding: 8px 10px !important; border: 1px solid #bbb !important; }
    .dash-card .text-2xl { font-size: 15px !important; }
    .dash-card .text-xs { font-size: 8.5px !important; }

    #entriesCardHeader { padding: 0 0 6px 0 !important; border: none !important; background: transparent !important; margin-bottom: 6px !important; }
    #entriesCardHeader h2 { font-size: 13px !important; }

    .print-col-actions { display: none !important; }

    table { width: 100% !important; border-collapse: collapse !important; table-layout: auto !important; }
    thead { display: table-header-group !important; }
    tbody { display: table-row-group !important; }
    tfoot { display: table-row-group !important; }
    tr { page-break-inside: avoid !important; }

    th, td {
      padding: 5px 5px !important;
      font-size: 9px !important;
      line-height: 1.25 !important;
      box-sizing: border-box !important;
      overflow-wrap: break-word !important;
    }
    .particulars-text { font-size: 9px !important; }

    #vehicleDetailContent { font-size: 9.5px !important; columns: 2 !important; column-gap: 24px !important; }

    .print-breakdown-table th, .print-breakdown-table td { font-size: 8.5px !important; padding: 3px 6px !important; }

    .bg-white { background: white !important; }
    .bg-gray-50, .bg-slate-50, .bg-slate-100 { background: #f8fafc !important; }
    .text-emerald-600 { color: #059669 !important; }
    .text-blue-600 { color: #2563eb !important; }
    .text-amber-500 { color: #d97706 !important; }
    .text-red-600 { color: #dc2626 !important; }
  }
  @media print and (orientation: portrait) {
    #dashboardRow { grid-template-columns: repeat(2, 1fr) !important; }
    #vehicleDetailContent { columns: 1 !important; }
  }
  .print-only { display: none; }
