/* Books / FYEO / Hospital Analysis switchboard forms — field alignment + grid print */

.wpd-books-printable {
    --books-label-w: 5.75rem;
    --books-field-gap: 0.65rem;
}

.wpd-books-printable .books-criteria-panel {
    border-left: 5px solid var(--wpd-panel-accent, var(--wpd-form-accent, rgb(255, 250, 140)));
    background: color-mix(in srgb, var(--wpd-panel-accent, var(--wpd-form-accent, rgb(255, 250, 140))) 22%, rgba(5, 8, 16, 0.38));
}

.wpd-books-printable .books-field-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem var(--books-field-gap);
    align-items: flex-end;
}

.wpd-books-printable .books-field-inline {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.35rem;
    min-width: 0;
    flex: 1 1 12rem;
    max-width: 100%;
}

.wpd-books-printable .books-field-inline--narrow {
    flex: 0 1 10rem;
}

.wpd-books-printable .books-field-inline--wide {
    flex: 2 1 16rem;
}

.wpd-books-printable .books-field-label {
    flex: 0 0 var(--books-label-w);
    max-width: var(--books-label-w);
    margin-bottom: 0;
    font-size: 0.8125rem;
    font-weight: 600;
    white-space: nowrap;
    text-align: end;
    line-height: 1.2;
}

.wpd-books-printable .books-field-control {
    flex: 1 1 auto;
    min-width: 0;
}

.wpd-books-printable .books-field-control .form-control,
.wpd-books-printable .books-field-control .form-select {
    width: 100%;
}

.wpd-books-printable .inv-rpt-stack {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.wpd-books-printable .inv-rpt-table-region {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.wpd-books-printable .books-grid-scroll {
    max-height: var(--books-grid-h, 22rem);
    overflow: auto;
}

.wpd-books-printable .client-invoice-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
}

.wpd-books-printable .client-invoice-actions {
    flex: 0 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: center;
    padding-top: 0.65rem;
    margin-top: 0.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

@media print {
    @page {
        margin: 0.55in;
        size: letter;
    }

    #site-header,
    #site-footer,
    .wpd-no-print,
    .wpd-form-help-btn,
    .wpd-form-tutorial-btn,
    .wpd-form-corner-actions,
    .client-invoice-card-rule {
        display: none !important;
    }

    body,
    #site-body,
    #site-main,
    #site-content {
        background: #fff !important;
        color: #000 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .wpd-books-printable {
        display: block !important;
        min-height: 0 !important;
        padding: 0 !important;
        color-scheme: light;
    }

    .wpd-books-printable .container-fluid,
    .wpd-books-printable .maint-form-modal-shell,
    .wpd-books-printable .card,
    .wpd-books-printable .card-body,
    .wpd-books-printable .inv-rpt-stack,
    .wpd-books-printable .inv-rpt-table-region,
    .wpd-books-printable .client-invoice-table-wrap,
    .wpd-books-printable .client-invoice-table-x-inner {
        background: #fff !important;
        border: none !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        padding: 0 !important;
        margin: 0 !important;
        color: #000 !important;
        max-width: none !important;
        width: 100% !important;
    }

    .wpd-books-printable .client-invoice-title {
        color: #000 !important;
        text-shadow: none !important;
        font-size: 1.15rem !important;
        font-weight: 700 !important;
        text-align: left !important;
        margin: 0 0 0.2rem !important;
    }

    .wpd-books-printable .wpd-print-meta {
        color: #333 !important;
        font-size: 0.85rem !important;
        margin: 0 0 0.45rem !important;
        text-align: left !important;
    }

    .wpd-books-printable .books-grid-scroll,
    .wpd-books-printable .client-invoice-table-body-scroll,
    .wpd-books-printable .maint-sales-scroll {
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
    }

    .wpd-books-printable .client-invoice-table {
        width: 100% !important;
        font-size: 9pt;
        border-collapse: collapse !important;
    }

    .wpd-books-printable .client-invoice-table thead {
        display: table-header-group;
    }

    .wpd-books-printable .client-invoice-table thead th {
        position: static !important;
        background: #e8e8e8 !important;
        color: #000 !important;
        border: 1px solid #666 !important;
        font-weight: 700 !important;
        padding: 0.25rem 0.35rem !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .wpd-books-printable .client-invoice-table tbody td {
        background: #fff !important;
        color: #000 !important;
        border: 1px solid #888 !important;
        padding: 0.2rem 0.35rem !important;
    }

    .wpd-books-printable .client-invoice-table tbody tr:nth-child(even) td {
        background: #f5f5f5 !important;
    }

    .wpd-books-printable .client-invoice-table-empty td {
        color: #444 !important;
        font-style: italic;
    }

    .wpd-books-printable .client-invoice-table tbody tr {
        page-break-inside: avoid;
    }
}
