/* Lists print in landscape. receipt.css defines the named portrait receipt page. */
.print-heading {
    display: none;
}
@page {
    size: A4 landscape;
    margin: 12mm;
}
@media print {
    body.school-app {
        background: white !important;
        font-size: 9pt;
        color: #152c3b;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    .school-nav,
    .school-topbar,
    .school-footer,
    .school-nav-scrim,
    .app-loading,
    .skip-link,
    .no-print,
    .page-heading,
    .school-tabs,
    .school-toolbar,
    .filter-launch,
    .school-filters,
    .filter-bar,
    .modal,
    .modal-backdrop,
    .offcanvas,
    .offcanvas-backdrop,
    .swal2-container,
    .school-pager,
    .pager,
    .form-back {
        display: none !important;
    }
    .school-workspace,
    .school-main {
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        max-width: none !important;
        min-height: 0 !important;
    }
    .school-shell {
        display: block !important;
    }
    .print-heading {
        display: flex;
        align-items: center;
        gap: 20px;
        padding-bottom: 6mm;
        margin-bottom: 6mm;
        border-bottom: 1px solid #c8d3db;
    }
    .print-heading img {
        width: 160px;
        height: auto;
    }
    .print-heading strong {
        font-size: 14pt;
    }
    .print-heading p {
        margin: 3px 0 0;
        font-size: 9pt;
    }
    .section-card,
    .metric,
    .welcome-hero,
    .finance-card {
        box-shadow: none !important;
        break-inside: avoid;
        border: 1px solid #dce3e8 !important;
        margin-bottom: 5mm !important;
    }
    .section-card {
        break-inside: auto;
    }
    .card-header,
    .card-body {
        padding: 3mm 4mm !important;
    }
    .table-responsive {
        overflow: visible !important;
        margin: 0 !important;
    }
    .table {
        display: table !important;
        width: 100% !important;
        font-size: 9pt;
    }
    .table thead {
        display: table-header-group !important;
        position: static !important;
        width: auto !important;
        height: auto !important;
        clip: auto !important;
        clip-path: none !important;
    }
    .table tbody {
        display: table-row-group !important;
    }
    .table tr {
        display: table-row !important;
        border: 0 !important;
        break-inside: avoid;
        padding: 0 !important;
    }
    .table th,
    .table td {
        display: table-cell !important;
        text-align: left !important;
        padding: 2.5mm !important;
        font-size: 9pt !important;
        width: auto !important;
        border-bottom: 1px solid #dce3e8 !important;
    }
    .table td:before {
        display: none !important;
    }
    .table td.no-print,
    .table th.no-print {
        display: none !important;
    }
    .table .person-avatar {
        display: none;
    }
    .table a {
        color: inherit;
        text-decoration: none;
    }
    .table small {
        font-size: 8pt !important;
    }
    .badge {
        font-size: 8pt !important;
    }
    .table .empty-state {
        padding: 6mm !important;
    }
    .empty-icon {
        display: none;
    }
    .btn,
    form {
        display: none !important;
    }
    .table select {
        display: none !important;
    }
    .person-cell {
        display: block !important;
    }
    .metric strong {
        font-size: 18pt !important;
    }
    .dashboard-grid {
        grid-template-columns: 1.5fr 1fr !important;
    }
    .dashboard-bottom {
        grid-template-columns: 1fr 1fr !important;
    }
    .welcome-hero {
        color: #153747 !important;
        background: #f3f6f8 !important;
    }
    .welcome-hero h2 {
        color: #153747 !important;
    }
    .welcome-hero p,
    .hero-date {
        color: #466270 !important;
    }
    .hero-date strong {
        color: #153747 !important;
    }
    a[href]:after {
        content: none !important;
    }
}
