.calender-report{background:#fff;border:1px solid var(--line,#dce5ef);border-radius:var(--radius,12px);padding:24px;margin:0 0 24px;box-shadow:0 3px 9px #11213b03;min-width:0}
.calender-report-header{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:20px}.calender-eyebrow{font-size:11px;letter-spacing:2px;font-weight:600;color:#3471b7}.calender-report-header h2{margin:6px 0 7px;font-size:21px;color:#24486f}.calender-report-header p{margin:0;color:#738297;font-size:12px;line-height:1.7}.calender-controls{display:flex;align-items:flex-end;gap:9px;flex-wrap:wrap}.calender-controls label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#63768e}.calender-controls input,.calender-controls select{font:inherit;font-size:13px;min-height:38px;border:1px solid #dce5ef;border-radius:7px;padding:8px 10px;background:white;color:#2f455f;min-width:0}.calender-controls .button{font-size:12px;min-height:38px;padding:8px 12px}.calender-report .inline-error{margin-bottom:16px}
.calender-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.calender-stat{padding:19px 18px;background:#f5f8fd;border:1px solid #e4ecf6;border-radius:10px;min-width:0;display:flex;flex-direction:column;align-items:flex-start}.calender-stat>span{font-size:13px;color:#60738c}.calender-stat>.calender-value{font-size:27px;font-weight:650;color:#225591;line-height:1.3;margin:10px 0 8px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.calender-value small{font-size:12px;font-weight:400;color:#7b8da4;margin-left:7px}.calender-stat .calender-stat-hint{font-size:11px;color:#7c8da3;margin-top:auto;padding-top:4px}.calender-value.is-missing{color:#99752d;font-size:16px}.calender-stat>.calender-value.is-missing{font-size:24px}.calender-missing{display:block;font-size:11px;color:#9a6b22;margin-top:5px}.calender-report-summary{font-size:12px;line-height:1.7;color:#64768e;margin:14px 0}.calender-warning{font-size:12px;line-height:1.7;padding:10px 12px;border-radius:7px;background:#fff7e6;color:#946620}
.calender-table-scroll{overflow:auto;max-width:100%;border:1px solid #e6ecf4;border-radius:8px}.calender-report table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.6}.calender-report table th,.calender-report table td{padding:13px 14px;border-bottom:1px solid #e9eef5;text-align:right;vertical-align:top;font-variant-numeric:tabular-nums}.calender-report table thead th{font-weight:550;background:#f8fafd;color:#718399;white-space:nowrap}.calender-report table tbody th{font-weight:550;color:#365a80}.calender-report table td{color:#405776}.calender-report table tbody tr:last-child>*{border-bottom:0}.calender-report table th:first-child,.calender-report table td:first-child{text-align:left}.calender-report table small{display:block;color:#8390a2;font-size:11px}.calender-report table .calender-missing{color:#9a6b22}.calender-line-table{min-width:650px}.calender-report .calender-empty{text-align:center;padding:25px!important;color:#8390a2}.calender-table-caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.calender-records{margin-top:17px;border-top:1px solid #e8eef5;padding-top:16px}.calender-records summary{font-size:13px;font-weight:550;color:#3c648d;cursor:pointer;line-height:1.7}.calender-record-note{font-size:12px;line-height:1.7;color:#8591a2;margin:12px 0}.calender-record-table{min-width:710px}.calender-report .calender-record-table th,.calender-report .calender-record-table td{text-align:left}.calender-record-table td:nth-child(2){max-width:300px;overflow-wrap:anywhere}.calender-record-table strong{font-weight:550}.calender-record-table .calender-unrecorded{color:#9a814e}.calender-pagination{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-top:12px;color:#7a8a9e;font-size:12px}.calender-pagination>div{display:flex;gap:8px}.calender-pagination .button{font-size:12px;padding:7px 10px}.calender-report-footer{margin-top:16px;padding-top:13px;border-top:1px solid #e8eef5;color:#8390a1;font-size:11px;line-height:1.8}.calender-report-footer p{margin:3px 0}.calender-report[aria-busy=true] .calender-stats{opacity:.65}.calender-report .hidden{display:none!important}
@media(max-width:1050px){.calender-stats{gap:9px}.calender-stat{padding:15px 13px}.calender-stat>.calender-value{font-size:23px}.calender-report-header{align-items:flex-start}}
@media(max-width:600px){.calender-report{padding:17px 14px;margin-bottom:18px}.calender-report-header{gap:14px}.calender-report-header h2{font-size:19px}.calender-controls{width:100%}.calender-controls label{flex:1;min-width:120px}.calender-controls .button{flex:1}.calender-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.calender-stat{padding:15px 13px;min-height:130px}.calender-stat>.calender-value{font-size:24px}.calender-pagination{flex-wrap:wrap}}

/* Printing reports show the same batch in three comparable units. */
.printing-report .calender-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.printing-report .calender-line-table{min-width:560px}.printing-report .calender-record-table{min-width:610px}
@media(max-width:600px){.printing-report .calender-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.printing-report .calender-stat{padding:12px 8px;min-height:120px}.printing-report .calender-stat>.calender-value{font-size:21px}.printing-report .calender-value small{display:block;margin-left:0;margin-top:4px}}

/* Printing and calendering reports use identical brand treatment and distinct warnings. */
.calender-report,.calender-controls input,.calender-controls select,
.calender-stat,.calender-table-scroll{border-color:var(--brand-border)}
.calender-eyebrow,.calender-stat>.calender-value,.calender-records summary{color:var(--brand)}
.calender-report-header h2,.calender-controls input,.calender-controls select,
.calender-report table tbody th{color:var(--brand-deep)}
.calender-stat,.calender-report table thead th{background:var(--brand-soft)}
.calender-report table td,.calender-controls label,.calender-stat>span,
.calender-report-summary{color:var(--muted)}
.calender-stat>.calender-value.is-missing{color:#99752d}
.calender-report table .calender-missing{color:#9a6b22}
.calender-report table .calender-unrecorded{color:#9a814e}
