/**
 * Print / PDF / export — neutral paper; no dark shell or glass.
 */

@media print {
    * {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }

    html,
    body,
    body.app-body--authenticated,
    body.app-body--auth {
        background: #fff !important;
        color: #111827 !important;
    }

    .app-sidebar,
    .app-topbar,
    .app-footer,
    .app-breadcrumb,
    .app-toast-stack,
    .auth-navbar,
    .no-print,
    .si-quote-chrome,
    .si-quote-kpis,
    #theme-toggle,
    .theme-toggle {
        display: none !important;
    }

    #app-shell,
    .app-shell__main,
    .app-main {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        max-width: none !important;
        background: #fff !important;
    }

    .quotation-format {
        max-width: none !important;
        margin: 0 !important;
        border: none !important;
        box-shadow: none !important;
        background: #fff !important;
        color: #111827 !important;
    }

    #quotation-screenshot-area,
    #quotation-screenshot-area * {
        color: #111827 !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    .quotation-format #quotation-screenshot-area {
        width: 100% !important;
        max-width: none !important;
        padding: 0.4rem 0.5rem !important;
    }

    .quotation-format .quotation-table-wrap,
    .quotation-format .overflow-x-auto {
        width: 100% !important;
        overflow: visible !important;
    }

    .quotation-format .quotation-table {
        width: 100% !important;
        max-width: 100% !important;
        table-layout: fixed !important;
        font-size: 8pt !important;
    }

    .quotation-format .quotation-table th,
    .quotation-format .quotation-table td {
        padding: 0.15rem 0.25rem !important;
        word-wrap: break-word !important;
        overflow-wrap: anywhere !important;
    }

    .quotation-format .booking-summary-box {
        width: 100% !important;
        font-size: 8.5pt !important;
        padding: 0.35rem 0.5rem !important;
    }

    .quotation-format .booking-summary-box table {
        width: 100% !important;
    }

    .quotation-format .quotation-total-row {
        width: 100% !important;
        font-size: 9pt !important;
        line-height: 1.35 !important;
    }

    .quotation-table,
    .quotation-table th,
    .quotation-table td {
        color: #111827 !important;
        border-color: #cbd5e1 !important;
        background: #fff !important;
    }

    .card,
    .section-card {
        background: #fff !important;
        color: #111827 !important;
        border: 1px solid #e2e8f0 !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
    }

    a {
        color: #0f172a !important;
        text-decoration: underline;
    }

    .table-responsive,
    .table-wrap {
        overflow: visible !important;
        max-height: none !important;
    }

    .table,
    .table-clean {
        color: #111827 !important;
        --bs-table-bg: #fff;
        --bs-table-color: #111827;
    }

    .table thead th,
    .table-clean thead th {
        background: #f1f5f9 !important;
        color: #0f172a !important;
    }

    .breakdown-panel,
    .booking-summary-box {
        background: #f8fafc !important;
        color: #111827 !important;
        border: 1px solid #e2e8f0 !important;
    }
}
