/* ============================================
   Print Styles for PDF Generation
   ============================================ */

@media print {

    /* Hide non-essential elements */
    .site-header,
    .site-nav,
    .site-footer,
    .calculator-form,
    .result-actions,
    .monetization-hooks,
    .no-print {
        display: none !important;
    }

    /* Page setup */
    @page {
        margin: 2cm;
        size: A4;
    }

    body {
        font-size: 12pt;
        line-height: 1.5;
        color: #000;
        background: white;
    }

    /* Typography for print */
    h1 {
        font-size: 24pt;
        margin-bottom: 1cm;
        page-break-after: avoid;
    }

    h2 {
        font-size: 18pt;
        margin-top: 0.5cm;
        margin-bottom: 0.5cm;
        page-break-after: avoid;
    }

    h3 {
        font-size: 14pt;
        margin-bottom: 0.3cm;
        page-break-after: avoid;
    }

    p,
    ul,
    ol {
        page-break-inside: avoid;
    }

    /* Calculator result for print */
    .calculator-result {
        border: 2px solid #2563EB;
        padding: 1cm;
        margin: 1cm 0;
        page-break-inside: avoid;
    }

    .result-range {
        text-align: center;
        margin-bottom: 1cm;
    }

    .amount-range {
        font-size: 28pt;
        font-weight: bold;
        color: #2563EB;
        margin: 0.5cm 0;
    }

    .result-explanation {
        font-size: 10pt;
        color: #6B7280;
        margin-bottom: 0.5cm;
    }

    .result-factors {
        margin-bottom: 1cm;
    }

    .result-factors ul {
        margin-left: 1cm;
    }

    .result-disclaimers {
        background-color: #FFF3E0;
        border: 1px solid #FFB74D;
        padding: 0.5cm;
        margin: 1cm 0;
        page-break-inside: avoid;
    }

    .result-disclaimers p {
        margin-bottom: 0.3cm;
        font-size: 10pt;
    }

    /* Print header */
    .print-header {
        display: block !important;
        text-align: center;
        margin-bottom: 1cm;
        padding-bottom: 0.5cm;
        border-bottom: 2px solid #E5E7EB;
    }

    .print-header h1 {
        font-size: 20pt;
        margin-bottom: 0.3cm;
    }

    .print-date {
        font-size: 10pt;
        color: #6B7280;
    }

    /* Print footer */
    .print-footer {
        display: block !important;
        margin-top: 1cm;
        padding-top: 0.5cm;
        border-top: 1px solid #E5E7EB;
        font-size: 9pt;
        color: #6B7280;
        text-align: center;
    }

    /* Links */
    a {
        color: #000;
        text-decoration: none;
    }

    a[href^="http"]:after {
        content: " (" attr(href) ")";
        font-size: 9pt;
        color: #6B7280;
    }

    /* Avoid page breaks */
    .disclaimer-box,
    .card {
        page-break-inside: avoid;
    }
}