/* ============================================================
   PRINT STYLES — SmartPack 2026
   Global print stylesheet for reports, invoices, statements.
   ============================================================ */

@media print {
    /* === HIDE NON-CONTENT ELEMENTS === */
    .sidebar,
    .sp-header,
    .sp-breadcrumb-bar,
    .sp-action-bar,
    .sp-topbar,
    .sp-drawer,
    .sp-drawer-backdrop,
    .sp-modal,
    .cp-shell,
    .cp-backdrop,
    .sp-icon-btn,
    nav:not(.print-keep),
    footer:not(.print-keep),
    .no-print,
    .print-hide {
        display: none !important;
    }

    /* === LAYOUT RESET === */
    .main-layout {
        display: block !important;
        height: auto !important;
        overflow: visible !important;
    }

    .main-content,
    .sp-page-content {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    /* === TYPOGRAPHY === */
    body {
        font-size: 11pt;
        line-height: 1.4;
        color: #000 !important;
        background: #fff !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    h1 { font-size: 16pt; }
    h2 { font-size: 14pt; }
    h3 { font-size: 12pt; }

    /* === CARDS & CONTAINERS === */
    .sp-card {
        border: 1px solid #ccc !important;
        box-shadow: none !important;
        break-inside: avoid;
        page-break-inside: avoid;
    }

    /* === TABLES === */
    table {
        border-collapse: collapse;
        width: 100%;
    }

    th, td {
        border: 1px solid #ccc;
        padding: 4pt 8pt;
    }

    thead {
        display: table-header-group; /* repeat header on each page */
    }

    tr {
        page-break-inside: avoid;
    }

    /* === DATAGRID === */
    .sp-datagrid-wrapper {
        overflow: visible !important;
        max-height: none !important;
    }

    .sp-datagrid-search,
    .sp-datagrid-filter-row,
    .sp-datagrid-pager,
    .sp-datagrid-command-cell,
    .sp-datagrid-loading-overlay {
        display: none !important;
    }

    .sp-datagrid-table {
        font-size: 9pt;
    }

    /* === PAGE BREAKS === */
    .page-break-before {
        page-break-before: always;
        break-before: page;
    }

    .page-break-after {
        page-break-after: always;
        break-after: page;
    }

    .page-break-avoid {
        page-break-inside: avoid;
        break-inside: avoid;
    }

    /* === REPORT PAGES === */
    .report-parameters,
    .report-actions {
        display: none !important;
    }

    .report-results {
        margin-top: 0 !important;
    }

    /* === BADGES — Print with background colors === */
    .sp-badge {
        border: 1px solid currentColor !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* === LINKS — show URL for external links === */
    a[href^="http"]::after {
        content: " (" attr(href) ")";
        font-size: 8pt;
        color: #666;
    }

    a[href^="/"]::after {
        content: none; /* Don't show internal URLs */
    }

    /* === SHOW PRINT-ONLY ELEMENTS === */
    .print-show,
    .print-only {
        display: block !important;
    }

    /* === MARGINS === */
    @page {
        margin: 1.5cm;
        size: A4;
    }

    @page :first {
        margin-top: 2cm;
    }
}
