html { font-size: 14px; }
@media (min-width: 768px) { html { font-size: 16px; } }

body {
    min-height: 100vh;
    background: #f6f8fb;
    color: #243247;
}

.navbar { box-shadow: 0 2px 12px rgba(17, 34, 56, .12); }
.card { border-color: #e1e7ee; border-radius: .8rem; }
.dashboard-intro {
    padding: 1.7rem 2rem;
    border-radius: .9rem;
    color: white;
    background: linear-gradient(110deg, #183a56, #1e6580);
}
.table { vertical-align: middle; }
.table thead th { white-space: nowrap; }
.form-label { font-weight: 600; }
.btn:focus-visible, .form-control:focus, .form-select:focus { box-shadow: 0 0 0 .2rem rgba(26, 113, 156, .2); }
.user-list-scroll { max-height: 320px; overflow-y: auto; }
.user-list-scroll thead th { position: sticky; top: 0; z-index: 1; background: #f6f8fb; }
.operator-list-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.operator-list-head .print-logo { display: none; }
.print-logo { display: block; width: 18mm; height: 18mm; object-fit: contain; margin: 0 0 2mm auto; }
.report-operator-list { max-height: 300px; overflow-y: auto; }
.report-operator-list .list-group-item[hidden] { display: none; }
.deposit-operator-report {
    background: white;
    color: #111;
    border: 1px solid #d9dee5;
    padding: 1.25rem;
    font-family: "Courier New", monospace;
}
.deposit-operator-report-head { display: grid; grid-template-columns: 1fr 1.5fr 1fr; gap: 1rem; align-items: start; margin-bottom: 1.4rem; }
.deposit-operator-letterhead { white-space: pre-line; }
.deposit-operator-title { text-align: center; font-weight: 700; }
.deposit-operator-title h2 { font-size: 1.3rem; font-weight: 700; margin: 0 0 .25rem; }
.deposit-operator-issued { text-align: right; }
.deposit-operator-group { margin-top: 1.25rem; break-inside: avoid-page; }
.deposit-operator-group h3 { font-size: 1rem; margin-bottom: .25rem; }
.deposit-operator-table { width: 100%; border-collapse: collapse; font-size: .73rem; white-space: nowrap; }
.deposit-operator-table th, .deposit-operator-table td { padding: .18rem .3rem; text-align: right; }
.deposit-operator-table thead { border-top: 1px solid #111; border-bottom: 1px solid #111; }
.deposit-operator-table tbody { border-bottom: 2px solid #111; }
.deposit-operator-table tfoot th, .deposit-operator-table tfoot td { font-weight: 700; }
.deposit-operator-grand-total { display: flex; justify-content: flex-end; gap: 2rem; border: 1px solid #111; padding: .2rem .35rem; font-weight: 700; margin-top: .5rem; }
.quadrature-print-report { background: white; color: #111; border: 1px solid #d9dee5; padding: 1.25rem; font-family: "Courier New", monospace; overflow-x: auto; }
.quadrature-report-head { display: grid; grid-template-columns: 1fr 1.6fr 1fr; align-items: start; gap: 1rem; margin-bottom: 1.6rem; }
.quadrature-report-letterhead { white-space: pre-line; }
.quadrature-report-title { text-align: center; font-weight: 700; }
.quadrature-report-title h2 { font-size: 1.3rem; font-weight: 700; margin: 0 0 .25rem; }
.quadrature-report-issued { text-align: right; }
.quadrature-report-table { width: 100%; border-collapse: collapse; font-size: 8pt; white-space: nowrap; }
.quadrature-report-table th, .quadrature-report-table td { padding: .18rem .3rem; text-align: right; }
.quadrature-report-table th:first-child, .quadrature-report-table td:first-child { text-align: left; }
.quadrature-report-detailed th:nth-child(4), .quadrature-report-detailed td:nth-child(4) { text-align: left; }
.quadrature-report-table thead, .quadrature-report-table tfoot { border: 1px solid #111; }
.quadrature-report-table tbody tr { break-inside: avoid; }
.quadrature-report-note { margin-top: .6rem; font-size: 8pt; }
.quadrature-operator-group { margin-top: 1rem; }
.quadrature-operator-group h3 { font-size: 1rem; margin-bottom: .25rem; }
.quadrature-operator-report .quadrature-report-table { table-layout: fixed; }
.quadrature-operator-report col:nth-child(1) { width: 9%; }
.quadrature-operator-report col:nth-child(2) { width: 11%; }
.quadrature-operator-report col:nth-child(3) { width: 5%; }
.quadrature-operator-report col:nth-child(4) { width: 8%; }
.quadrature-operator-report col:nth-child(5) { width: 10%; }
.quadrature-operator-report col:nth-child(6) { width: 9%; }
.quadrature-operator-report col:nth-child(7) { width: 10%; }
.quadrature-operator-report col:nth-child(8) { width: 9%; }
.quadrature-operator-report col:nth-child(9) { width: 9%; }
.quadrature-operator-report col:nth-child(10) { width: 9%; }
.quadrature-operator-report col:nth-child(11) { width: 11%; }
.quadrature-operator-total { margin-top: .25rem; }
.deposit-summary-print-report { color: #111; font-family: "Courier New", monospace; }
.deposit-summary-report-table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 7pt; }
.deposit-summary-report-table th, .deposit-summary-report-table td { padding: .7mm .5mm; text-align: right; white-space: nowrap; }
.deposit-summary-report-table th { white-space: normal; overflow-wrap: anywhere; }
.deposit-summary-report-table th:first-child, .deposit-summary-report-table td:first-child { text-align: left; }
.deposit-summary-report-table thead, .deposit-summary-report-table tfoot { border: 1px solid #111; }
.deposit-summary-print-report[data-grouping="operador"] .deposit-summary-report-table th:nth-child(2) { width: 20%; text-align: left; }
.deposit-summary-print-report[data-grouping="operador"] .deposit-summary-report-table td:nth-child(2) { text-align: left; white-space: normal; overflow-wrap: anywhere; }

@media screen {
    .deposit-operator-report, .quadrature-operator-report, .deposit-summary-print-report { display: none; }
}

@page { size: A4 landscape; margin: 8mm; }

@media print {
    body.printing-operators,
    body.printing-report { background: white; color: black; }
    body.printing-operators > .container,
    body.printing-report > .container { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
    body.printing-operators main,
    body.printing-report main { padding: 0 !important; }
    body.printing-operators header,
    body.printing-operators main > *:not(.operator-list) { display: none !important; }
    body.printing-operators .operator-list { display: block; }
    body.printing-operators .operator-list-head .print-logo { display: block; }
    body.printing-operators .operator-list .table-responsive { overflow: visible; }
    body.printing-operators .operator-list table { width: 100%; }
    body.printing-operators .operator-list thead { display: table-header-group; }
    body.printing-operators .operator-list tr { break-inside: avoid; }
    body.printing-report header,
    body.printing-report .report-filter-form,
    body.printing-report .modal { display: none !important; }
    body.printing-report .table-responsive { overflow: visible; }
    body.printing-report .report-screen-heading { display: none !important; }
    body.printing-report .deposit-operator-report { border: 0; padding: 0; }
    body.printing-report .deposit-operator-report-head,
    body.printing-report .quadrature-report-head { grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr) minmax(0, 1fr); }
    body.printing-report .deposit-operator-title h2,
    body.printing-report .deposit-operator-title div,
    body.printing-report .deposit-operator-issued,
    body.printing-report .quadrature-report-title h2,
    body.printing-report .quadrature-report-title div,
    body.printing-report .quadrature-report-issued { white-space: nowrap; }
    body.printing-report .deposit-operator-table { width: 100%; table-layout: fixed; font-size: 7pt; }
    body.printing-report .deposit-operator-table th:nth-child(1) { width: 12%; }
    body.printing-report .deposit-operator-table th:nth-child(2) { width: 9%; }
    body.printing-report .deposit-operator-table th:nth-child(3) { width: 4%; }
    body.printing-report .deposit-operator-table th:nth-child(n+4):nth-child(-n+14) { width: 6%; }
    body.printing-report .deposit-operator-table th:nth-child(15) { width: 9%; }
    body.printing-report .deposit-operator-table th,
    body.printing-report .deposit-operator-table td { padding: .7mm .5mm; }
    body.printing-report .deposit-operator-table th { white-space: normal; overflow-wrap: anywhere; }
    body.printing-report .deposit-operator-table thead { display: table-header-group; }
    body.printing-report .deposit-operator-table tr { break-inside: avoid; }
    body.printing-report .deposit-summary-print-report .deposit-operator-report-head { grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr) minmax(0, 1fr); }
    body.printing-report .deposit-summary-report-table thead { display: table-header-group; }
    body.printing-report .deposit-summary-report-table tr { break-inside: avoid; }
    body.printing-report .quadrature-print-report { border: 0; padding: 0; overflow: visible; }
    body.printing-report .quadrature-report-table { font-size: 7pt; }
    body.printing-report .quadrature-report-table th,
    body.printing-report .quadrature-report-table td { padding: .8mm .7mm; }
    body.printing-report .quadrature-report-table th { white-space: normal; overflow-wrap: anywhere; }
    body.printing-report .quadrature-report-table thead { display: table-header-group; }
    body.printing-report .quadrature-report-table tr { break-inside: avoid; }
    body.printing-report .quadrature-report-detailed { table-layout: fixed; }
    body.printing-report .quadrature-report-detailed th:nth-child(1) { width: 8%; }
    body.printing-report .quadrature-report-detailed th:nth-child(2) { width: 7%; }
    body.printing-report .quadrature-report-detailed th:nth-child(3) { width: 4%; }
    body.printing-report .quadrature-report-detailed th:nth-child(4) { width: 14%; }
    body.printing-report .quadrature-report-detailed th:nth-child(5) { width: 8%; }
    body.printing-report .quadrature-report-detailed th:nth-child(6) { width: 9%; }
    body.printing-report .quadrature-report-detailed th:nth-child(7) { width: 9%; }
    body.printing-report .quadrature-report-detailed th:nth-child(8) { width: 9%; }
    body.printing-report .quadrature-report-detailed th:nth-child(9) { width: 8%; }
    body.printing-report .quadrature-report-detailed th:nth-child(10) { width: 7%; }
    body.printing-report .quadrature-report-detailed th:nth-child(11) { width: 7%; }
    body.printing-report .quadrature-report-detailed th:nth-child(12) { width: 10%; }
    body.printing-report .quadrature-report-detailed td:nth-child(4) { white-space: normal; overflow-wrap: anywhere; }
    body.printing-report .quadrature-operator-total { break-inside: avoid; }
    body.printing-report .quadrature-operator-group h3 { break-after: avoid; }
    body.printing-report .table-responsive table { width: 100%; }
    body.printing-report .table-responsive thead { display: table-header-group; }
    body.printing-report .table-responsive tr { break-inside: avoid; }
}
