
        /* Print Styles for PDF Export - Fit to One A4 Page */
        @media print {
            @page { size: A4 portrait; margin: 1.5cm; }
            * { -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }
            body { background: #ffffff !important; font-size: 9px !important; color: #1d1d1f !important; }

            /* Force light mode for print — override dark theme colors */
            [data-theme="dark"] {
                --bg-primary: #ffffff;
                --bg-secondary: #f5f5f7;
                --bg-tertiary: #ffffff;
                --text-primary: #1d1d1f;
                --text-secondary: #6e6e73;
                --text-tertiary: #86868b;
                --text-muted: #aeaeb2;
                --border-light: #e5e5e7;
                --border-medium: #d2d2d7;
                --glass-bg: #ffffff;
                --glass-border: #e0e0e0;
                --glass-shadow: none;
                --shadow-sm: none;
                --shadow-md: none;
                --shadow-lg: none;
                --shadow-xl: none;
            }

            /* Hide interactive/nav elements */
            .nav-container,
            .mobile-header,
            .bottom-tab-bar,
            #budget-page,
            .toast,
            .recommendations-card,
            .quick-tools,
            .btn,
            .month-card-edit-hint,
            .calendar-year-nav button,
            .version-modal-overlay,
            .onetime-modal-overlay,
            .manage-templates-modal,
            .view-toggle,
            .expand-controls,
            .dropdown { display: none !important; }

            /* ═══ GLASS → SOLID CONVERSION FOR PRINT ═══ */

            /* Remove all glass/backdrop effects — replace with solid white + border */
            .metric-card,
            .buffer-card,
            .month-card,
            .summary-card,
            .dash-card,
            .calendar-year-nav,
            .sim-hero-card,
            .category-bar-tooltip,
            .budget-summary-card,
            .share-summary-card {
                backdrop-filter: none !important;
                -webkit-backdrop-filter: none !important;
                background: #ffffff !important;
                box-shadow: none !important;
                border: 1px solid #e0e0e0 !important;
            }

            /* Current month card retains a subtle blue border */
            .month-card.current-month {
                border: 2px solid #0071e3 !important;
                box-shadow: none !important;
            }

            /* Summary highlight card keeps success tint */
            .summary-card.highlight {
                background: #f0faf3 !important;
                border-color: #34c759 !important;
            }

            /* Tabular numbers for financial figures */
            .metric-value,
            .buffer-item-value,
            .month-card-value,
            .summary-value,
            .dash-card-value,
            .income-amount,
            .print-summary-value,
            .print-table .amount {
                font-variant-numeric: tabular-nums !important;
            }

            /* Force visible text colors */
            .text-primary,
            .metric-label,
            .buffer-name,
            .month-card-name,
            .summary-label,
            .dash-card-title,
            .category-bar-name {
                color: #1d1d1f !important;
            }

            .text-secondary,
            .metric-sub,
            .buffer-income,
            .month-card-label,
            .buffer-item-label {
                color: #6e6e73 !important;
            }

            /* Person colors — solid, print-safe */
            .buffer-card.person-0 .buffer-avatar { background: #0071e3 !important; color: #fff !important; }
            .buffer-card.person-1 .buffer-avatar { background: #af52de !important; color: #fff !important; }
            .buffer-card.person-2 .buffer-avatar { background: #34c759 !important; color: #fff !important; }
            .buffer-card.person-3 .buffer-avatar { background: #ff9500 !important; color: #fff !important; }
            .buffer-card.person-4 .buffer-avatar { background: #ff3b30 !important; color: #fff !important; }

            /* Financial value colors for print */
            .month-card-value.income { color: #248a3d !important; }
            .month-card-value.expense { color: #d70015 !important; }
            .month-card-value.savings { color: #0071e3 !important; }

            /* Calendar months grid — force clean layout */
            .calendar-months-grid {
                grid-template-columns: repeat(3, 1fr) !important;
                gap: 10px !important;
            }

            .calendar-summary {
                grid-template-columns: repeat(4, 1fr) !important;
                gap: 10px !important;
            }

            /* Calendar year nav pill — solid for print */
            .calendar-year-nav {
                background: #f5f5f7 !important;
                border: 1px solid #d2d2d7 !important;
                backdrop-filter: none !important;
                -webkit-backdrop-filter: none !important;
            }

            /* Month card opacity reset — all months should print clearly */
            .month-card.past-month {
                opacity: 1 !important;
            }
            /* Disable all hover transforms and transitions */
            * {
                transition: none !important;
                transform: none !important;
            }

            /* Metrics section background — clean for print */
            .metrics-section {
                background: #f8f9fa !important;
            }
            .dash-card { break-inside: avoid; }
            #dashboard-page { display: block !important; padding-top: 0 !important; }
            .dashboard { padding-top: 0 !important; }
            .dashboard-hero { padding: 8px 12px 4px !important; }
            .dashboard-title { font-size: 22px !important; margin-bottom: 2px !important; }
            .dashboard-subtitle { font-size: 12px !important; }
            .dashboard-date { font-size: 9px !important; }
            .dashboard-template-pill { font-size: 8px !important; padding: 2px 7px !important; }
            .metrics-section { margin: 0 auto 8px !important; padding: 0 8px !important; }
            .metrics-row { gap: 8px !important; margin-bottom: 8px !important; }
            .metric-card { padding: 10px !important; border-radius: var(--radius-sm) !important; }
            .metric-icon { font-size: 18px !important; margin-bottom: 4px !important; }
            .metric-value { font-size: 16px !important; }
            .metric-label { font-size: 9px !important; margin-top: 2px !important; }
            .metric-sub { font-size: 8px !important; margin-top: 4px !important; padding-top: 4px !important; }
            .buffer-cards { gap: 8px !important; }
            .buffer-card { padding: 12px !important; border-radius: var(--radius-sm) !important; }
            .buffer-avatar { width: 28px !important; height: 28px !important; font-size: 12px !important; }
            .buffer-name { font-size: 11px !important; }
            .buffer-income { font-size: 9px !important; }
            .buffer-card-header { margin-bottom: 8px !important; gap: 8px !important; }
            .buffer-grid { gap: 6px !important; }
            .buffer-item { padding: 8px !important; border-radius: var(--radius-xs) !important; }
            .buffer-item-value { font-size: 13px !important; }
            .buffer-item-label { font-size: 7px !important; margin-top: 2px !important; }
            .dashboard-grid { padding: 0 8px 8px !important; gap: 8px !important; }
            .dash-card { padding: 12px !important; border-radius: var(--radius-md) !important; }
            .dash-card-header { margin-bottom: 8px !important; }
            .dash-card-title { font-size: 9px !important; }
            .dash-card-value { font-size: 14px !important; margin-top: 2px !important; }
            .income-split { gap: 16px !important; margin-top: 8px !important; }
            .income-donut { width: 100px !important; height: 100px !important; }
            .income-donut circle { stroke-width: 16 !important; }
            .income-donut-total { font-size: 14px !important; }
            .income-donut-label { font-size: 8px !important; }
            .income-person { padding: 8px 0 !important; gap: 8px !important; }
            .income-name { font-size: 11px !important; }
            .income-percent { font-size: 9px !important; }
            .income-amount { font-size: 12px !important; }
            .savings-comparison { gap: 16px !important; }
            .savings-person-name { font-size: 10px !important; }
            .savings-rate-ring svg { width: 70px !important; height: 70px !important; }
            .savings-rate-value { font-size: 14px !important; }
            .savings-amounts { font-size: 9px !important; }
            .category-bar-item { margin-bottom: 8px !important; }
            .category-bar-name { font-size: 10px !important; }
            .category-bar-amount { font-size: 10px !important; }
            .category-bar-tooltip {
                position: static !important;
                opacity: 1 !important;
                visibility: visible !important;
                display: inline-block !important;
                padding: 2px 6px !important;
                margin-top: 4px !important;
                font-size: 7px !important;
            }
            .category-bar-tooltip::after { display: none !important; }
            .category-bar-track { display: block !important; height: 18px !important; }
            .category-bar-fill { display: inline-block !important; vertical-align: top !important; font-size: 8px !important; }
            .category-detail-wrapper { display: none !important; }
            .category-bar-header .expand-icon { display: none !important; }
            .type-badge { font-size: 7px !important; padding: 1px 4px !important; }
            .legend-item { padding: 4px 0 !important; }
            .shared-bar { height: 24px !important; }
            .shared-segment { font-size: 9px !important; }
            .shared-legend { margin-top: 6px !important; }
            .shared-legend-item { font-size: 9px !important; }
            .shared-dot { width: 8px !important; height: 8px !important; }
            .animate-in { animation: none !important; opacity: 1 !important; }

            /* Hide projections charts canvas for print */
            .projections-card { display: none !important; }

            /* Print View specific styles - Premium PDF Design */
            #print-view {
                display: block !important;
                padding: 0 !important;
                font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Segoe UI', sans-serif;
            }

            .print-header {
                text-align: center;
                padding: 28px 24px 24px;
                background: #1d1d1f;
                color: white;
                margin: -1.5cm -1.5cm 24px -1.5cm;
                border-bottom: 3px solid #0071e3;
            }

            .print-logo {
                font-size: 28px;
                font-weight: 800;
                letter-spacing: -0.5px;
                margin-bottom: 6px;
            }

            .print-subtitle {
                font-size: 13px;
                font-weight: 400;
                opacity: 0.6;
                letter-spacing: 0.3px;
            }

            .print-date {
                font-size: 10px;
                opacity: 0.45;
                margin-top: 6px;
                font-weight: 400;
            }

            .print-section {
                margin-bottom: 18px;
                break-inside: avoid;
                page-break-inside: avoid;
            }

            .print-section-title {
                font-size: 12px;
                font-weight: 700;
                color: #ffffff;
                padding: 8px 14px;
                background: #1d1d1f;
                border-radius: 6px;
                margin-bottom: 8px;
                letter-spacing: 0.2px;
            }

            .print-table {
                width: 100%;
                border-collapse: collapse;
                font-size: 10px;
            }

            .print-table th {
                background: #f5f5f7;
                padding: 8px 12px;
                text-align: left;
                font-weight: 600;
                font-size: 8px;
                text-transform: uppercase;
                letter-spacing: 0.5px;
                color: #6e6e73;
                border-bottom: 1px solid #e5e5ea;
            }

            .print-table td {
                padding: 7px 12px;
                border-bottom: 1px solid #f2f2f7;
                color: #1d1d1f;
            }

            .print-table tr:nth-child(even) td {
                background: #fafafa;
            }

            .print-table .amount {
                text-align: right;
                font-family: 'SF Mono', 'Menlo', 'Monaco', monospace;
                font-size: 10px;
                font-weight: 500;
            }

            .print-table .total-row {
                font-weight: 700;
                background: #1d1d1f !important;
            }

            .print-table .total-row td {
                border-bottom: none;
                padding: 9px 12px;
                color: #ffffff !important;
            }

            .print-table .note-row td {
                padding: 5px 12px 8px 28px;
                font-size: 9px;
                color: #6c757d;
                font-style: italic;
                background: #fefef5;
                border-left: 3px solid #ffcc00;
            }

            .print-summary-grid {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 14px;
                margin-bottom: 22px;
            }

            .print-summary-card {
                background: #ffffff;
                border-radius: 10px;
                padding: 16px 18px;
                text-align: center;
                border: 1px solid #e5e5ea;
                border-top: 3px solid #e5e5ea;
            }

            .print-summary-label {
                font-size: 9px;
                color: #86868b;
                margin-bottom: 8px;
                text-transform: uppercase;
                letter-spacing: 0.8px;
                font-weight: 600;
            }

            .print-summary-value {
                font-size: 20px;
                font-weight: 800;
                color: #1d1d1f;
                margin-bottom: 6px;
                font-variant-numeric: tabular-nums;
            }

            .print-summary-sub {
                font-size: 8px;
                color: #aeaeb2;
                margin-top: 4px;
                letter-spacing: 0.2px;
            }

            .print-footer {
                margin: 30px -1.5cm -1.5cm -1.5cm;
                padding: 14px 24px;
                background: #1d1d1f;
                border-top: 3px solid #0071e3;
                text-align: center;
                font-size: 8px;
                color: rgba(255,255,255,0.5);
                letter-spacing: 0.3px;
            }

            /* Hide print view when not printing */
        }

        /* Print view always hidden on screen */
        #print-view {
            display: none;
        }


