html, body {
    margin: 0;
    padding: 0;
    height: 100%;
    overflow: auto;
}

@media print {
    html, body {
        height: auto;
        overflow: visible;
    }

    /* Print background colors (card headers) */
    * {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }

    /* Hide navigation, footer and action buttons */
    nav, footer, .btn {
        display: none !important;
    }

    /* Full-width containers on paper */
    .container, .container-fluid {
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 !important;
    }

    /* Don't break cards across pages */
    .card {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    /* Let signer cards flow naturally on paper width */
    [style*="flex"] {
        flex-wrap: wrap !important;
    }
}

/* Signer card row alignment: fixed height on each row so content aligns across adjacent cards */
.signer-card tbody tr {
    height: 44px;
    vertical-align: middle;
}

#test-system-banner {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    pointer-events: none;
}

#test-system-banner::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 5px solid red;
    box-sizing: border-box;
    z-index: 10000; /* Make sure this is above all other content */
}

.test-system-text {
    position: fixed;
    top: 0;
    right: 0;
    margin-right: 20px;
    background: red;
    color: white;
    padding: 2px 10px;
    z-index: 10001;
    font-weight: bold;
    pointer-events: none;
}
