/* ============================================================
   Transcriber - Print Stylesheet
   Applied via <link media="print">

   Produces clean vector text output with optional faded
   background image. Each page gets its own print page.
   ============================================================ */

@media print {
    /* Hide all non-printable elements */
    .no-print,
    .app-header,
    .viewer-toolbar,
    .page-label,
    .page-status-overlay,
    .toast-container,
    .login-screen {
        display: none !important;
    }

    /* Reset body */
    body {
        margin: 0;
        padding: 0;
        background: white;
        color: black;
        font-family: 'Georgia', 'Times New Roman', serif;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* Remove app container styling */
    .app-container {
        padding: 0;
        margin: 0;
    }

    .viewer-pages {
        padding: 0;
        margin: 0;
        max-width: none;
    }

    /* Each document page = one printed page */
    .viewer-page {
        page-break-after: always;
        page-break-inside: avoid;
        margin: 0;
        padding: 0;
        border-radius: 0;
        box-shadow: none;
        background: white;
    }

    .viewer-page:last-child {
        page-break-after: auto;
    }

    /* Page container fills the print page */
    .page-container {
        position: relative;
        width: 100%;
        height: 100vh;
        overflow: hidden;
        background: white;
    }

    /* Hide the screen image, show the print image */
    .page-image:not(.print-only-image) {
        display: none !important;
    }

    .print-only-image {
        display: block !important;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: contain;
        z-index: 0;
        /* Opacity is set inline by Alpine based on printImageOpacity */
    }

    /* Text regions: crisp vector text */
    .text-region {
        z-index: 1;
        background: transparent !important;
    }

    .text-region:hover {
        background: transparent !important;
    }

    .region-text {
        color: black !important;
        font-family: 'Georgia', 'Times New Roman', serif;
        font-size: 12pt;
        line-height: 1.4;
    }

    /* Hide edit controls */
    .region-editor {
        display: none !important;
    }

    /* Remove interactive cursor */
    * {
        cursor: default !important;
    }
}
