/* ── Global Print Styles ───────────────────────────────────────────────────── */
@media print {

    @page {
        size: landscape;
        margin: 8mm;
    }

    /* ── Always hide chrome ───────────────────────────────────────────────── */
    .main_header,
    .footer,
    .alert-area,
    .language-selector,
    .dashboard-sidebar,
    .client-info-box,
    .registration-header,
    .calculator-form-header,
    .form-step:not(#step-report),
    .form-navigation,
    .report-actions,
    .btn-print-report,
    .btn-start-over,
    .btn-back,
    .btn-cancel,
    .btn-next,
    .form-section-header,
    .calculator-modal,
    .calculator-print-bar {
        display: none !important;
    }

    html, body {
        margin: 0 !important;
        padding: 0 !important;
        background: white !important;
    }

    /* ── Client profile / dashboard layout wrappers ───────────────────────── */
    .case-manager-dashboard,
    .admin-dashboard,
    .dashboard-container,
    .dashboard-main,
    .content-wrapper {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        box-shadow: none !important;
    }

    #step-report {
        display: block !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* ── Client Profile report — portrait-optimised ──────────────────────── */
    .calculator-form-page .container {
        padding: 0 !important;
        max-width: 100% !important;
    }

    .report-content {
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Title row */
    .report-title-section {
        margin: 0 0 3px !important;
        padding: 0 !important;
    }
    .report-main-title,
    .report-title {
        font-size: 12pt !important;
        margin: 0 0 3px !important;
        padding: 0 !important;
    }

    /* Metadata row (client name, county, household, programs) */
    .report-metadata {
        font-size: 7.5pt !important;
        margin-bottom: 4px !important;
        padding: 0 !important;
    }
    .metadata-item,
    .metadata-row,
    .metadata-item-inline {
        font-size: 7.5pt !important;
        margin: 0 0 1px !important;
    }

    /* Summary cards */
    .report-summary-cards {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        gap: 4px !important;
        margin-bottom: 5px !important;
    }
    .summary-card,
    .summary-card-report {
        flex: 1 !important;
        padding: 4px 5px !important;
        font-size: 7.5pt !important;
        box-shadow: none !important;
        border: 1px solid #ccc !important;
    }
    .card-value {
        font-size: 11pt !important;
        margin-bottom: 1px !important;
    }
    .card-label {
        font-size: 6.5pt !important;
    }
    .card-status,
    .card-sub-label,
    .card-sub-text {
        font-size: 6pt !important;
    }

    /* Self-sufficiency standard card */
    .standard-header {
        font-size: 7.5pt !important;
        margin-bottom: 1px !important;
    }
    .standard-sub {
        font-size: 6.5pt !important;
    }
    .standard-details {
        margin-top: 2px !important;
    }
    .standard-row {
        font-size: 6.5pt !important;
        padding: 1px 0 !important;
    }

    /* Progress bar */
    .progress-bar {
        height: 3px !important;
        margin-top: 1px !important;
    }

    /* Tables section */
    .report-tables {
        margin-top: 4px !important;
    }
    .report-comparison-section {
        margin-bottom: 4px !important;
        page-break-inside: avoid;
    }
    .comparison-title {
        font-size: 8pt !important;
        margin: 0 0 2px !important;
        padding: 1px 0 !important;
    }
    .comparison-table-wrapper {
        overflow: visible !important;
    }
    .comparison-table,
    .profile-table {
        width: 100% !important;
        font-size: 6pt !important;
        border-collapse: collapse !important;
        table-layout: fixed !important;
    }
    .comparison-table th,
    .comparison-table td,
    .profile-table th,
    .profile-table td {
        padding: 1px 2px !important;
        border: 1px solid #ccc !important;
        word-break: break-word !important;
        white-space: normal !important;
    }
    .comparison-table thead th,
    .profile-table thead th {
        font-size: 6pt !important;
        background: #305c87 !important;
        color: white !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* ── Self-Sufficiency data shortcode section ─────────────────────────── */
    .report-shortcode-container {
        margin-top: 5px !important;
        padding: 0 !important;
    }
    .self-sufficiency-data {
        font-size: 7pt !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .self-sufficiency-data h3 {
        font-size: 8pt !important;
        margin: 0 0 2px !important;
        padding: 0 !important;
    }
    .self-sufficiency-data h4 {
        font-size: 7.5pt !important;
        margin: 3px 0 1px !important;
        padding: 0 !important;
    }
    .self-sufficiency-data p {
        font-size: 7pt !important;
        margin: 0 0 2px !important;
    }
    .self-sufficiency-data ul {
        margin: 0 0 2px !important;
        padding-left: 12px !important;
    }
    .self-sufficiency-data ul li {
        font-size: 7pt !important;
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1.4 !important;
    }
    .results-note-box {
        border: 1px solid #ccc !important;
        padding: 2px 4px !important;
        margin: 2px 0 !important;
        font-size: 6.5pt !important;
    }
    .results-note-box .note-title {
        font-size: 7pt !important;
        margin: 0 0 1px !important;
    }
    .results-note-box .note-text {
        font-size: 6pt !important;
        margin: 0 !important;
    }

    /* ── Calculator landing page ──────────────────────────────────────────── */
    .calculator-landing-page {
        padding: 0 !important;
        margin: 0 !important;
    }

    .calculator-landing-page .calculator-hero {
        padding: 12px 0 !important;
        background: #72acd4 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .calculator-landing-page .calculator-hero .hero-content-wrapper {
        display: flex !important;
        flex-direction: row !important;
        gap: 12px !important;
        align-items: center !important;
    }

    .calculator-landing-page .calculator-hero .hero-text-section {
        flex: 1 !important;
        padding: 0 !important;
    }

    .calculator-landing-page .calculator-hero .hero-title {
        font-size: 28pt !important;
        margin-bottom: 4px !important;
    }

    .calculator-landing-page .calculator-hero .title-accent {
        margin-bottom: 6px !important;
        height: 6px !important;
    }

    .calculator-landing-page .calculator-hero .hero-description,
    .calculator-landing-page .calculator-hero .hero-subdescription {
        font-size: 9pt !important;
        margin-bottom: 4px !important;
    }

    .calculator-landing-page .calculator-hero .btn-get-started {
        display: none !important;
    }

    .calculator-landing-page .calculator-hero .hero-image-section {
        flex: 0 0 30% !important;
        max-width: 30% !important;
    }

    .calculator-landing-page .calculator-hero .image-wrapper img {
        max-height: 100px !important;
        object-fit: contain !important;
    }

    .calculator-landing-page .calculator-info-cards {
        padding: 10px 0 !important;
    }

    .calculator-landing-page .calculator-info-cards .cards-wrapper {
        display: flex !important;
        flex-direction: row !important;
        gap: 8px !important;
    }

    .calculator-landing-page .calculator-info-cards .info-card {
        flex: 1 !important;
        padding: 8px 10px !important;
        box-shadow: none !important;
        border: 1px solid #ddd !important;
        page-break-inside: avoid;
    }

    .calculator-landing-page .calculator-info-cards .info-card .card-title {
        font-size: 9pt !important;
        margin-bottom: 4px !important;
    }

    .calculator-landing-page .calculator-info-cards .info-card .card-accent {
        height: 4px !important;
        margin-bottom: 6px !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .calculator-landing-page .calculator-info-cards .info-card .card-description {
        font-size: 8pt !important;
        line-height: 1.4 !important;
    }

    .calculator-landing-page .calculator-support {
        padding: 10px 0 !important;
    }

    .calculator-landing-page .calculator-support .support-title {
        font-size: 12pt !important;
        margin-bottom: 4px !important;
    }

    .calculator-landing-page .calculator-support .support-description {
        font-size: 8pt !important;
        margin-bottom: 6px !important;
    }

    .calculator-landing-page .calculator-support .btn-worksource {
        display: none !important;
    }

    .container,
    .container-fluid {
        padding: 0 8px !important;
        max-width: 100% !important;
    }
}
