/* print.css */
@media print {
    @page {
        size: letter portrait;
        margin: 0.5in;
    }

    html, body {
        margin: 0;
        padding: 0;
        height: auto !important;
        min-height: auto !important;
        background-color: #FFF !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* Hide everything except preview */
    .noprint,
    .editor-sidebar,
    .btn,
    .app-container > *:not(.preview-area) {
        display: none !important;
    }

    /* Expand preview area */
    .app-container {
        display: block;
        height: auto !important;
        min-height: auto !important;
    }

    .preview-area {
        padding: 0;
        background: transparent !important;
        display: block;
        height: auto !important;
        min-height: auto !important;
    }

    .preview-container {
        max-width: none;
        height: auto !important;
        min-height: auto !important;
    }

    .sign-wrapper {
        box-shadow: none !important;
        border-radius: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        aspect-ratio: auto; /* Let it flow */
        height: auto !important;
        min-height: auto !important;
        border: none;
        overflow: visible !important;
    }

    .sign-content {
        padding: 0.5in !important;
    }

    /* Ensure backgrounds print by forcing color-adjust */
    .theme-guest, .theme-office, .theme-airbnb, .theme-event {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* Adjust typography for print */
    .sign-header h1 {
        font-size: 36pt;
    }
    
    .info-row .value {
        font-size: 24pt;
    }

    .primary-instruction {
        font-size: 16pt;
    }

    .secondary-instruction {
        font-size: 12pt;
    }

    .sign-footer {
        font-size: 10pt;
        color: #999;
    }
}
