.accounting-shell{max-width:1320px;margin:0 auto;padding:32px 24px 72px}.accounting-shell [hidden]{display:none!important}.accounting-shell h1{margin:4px 0}.accounting-shell>p:not(.eyebrow){margin:8px 0 18px}.accounting-card,.accounting-records{background:#fff;border:1px solid #c9d6e5;border-radius:14px;color:#092038}.accounting-card{padding:20px;margin:18px 0}.button-icon{display:inline-grid;width:18px;height:18px;margin-right:7px;place-items:center;vertical-align:-4px}.button-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.range-controls{display:grid;grid-template-columns:minmax(260px,1fr) repeat(2,minmax(150px,190px)) auto;align-items:end;gap:14px;padding:16px 20px}.range-controls h2,.accounting-card h2{margin:0 0 4px}.range-controls p{margin:0}.range-controls label,.form-grid label{display:grid;gap:6px;font-weight:700}.range-controls input,.form-grid input,.form-grid select,.form-grid textarea{font:inherit;color:#092038;background:#fff;border:1px solid #9fb5cc;border-radius:8px;padding:10px 12px}.range-controls .button{min-height:44px}.accounting-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.accounting-totals article{padding:20px;border-radius:14px;background:#0a2336;color:#c5dded}.accounting-totals strong{display:block;color:#fff;font-size:clamp(1.5rem,3vw,2.2rem);margin-top:8px;overflow-wrap:anywhere}.accounting-totals .negative{color:#ffb3ad}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.form-grid .wide{grid-column:1/-1}.form-grid label span{font-weight:400;color:#536274}.form-grid textarea{resize:vertical}.accounting-card button:disabled{opacity:.65;cursor:wait}#invoice-status{min-height:1.5em;margin-bottom:0}.accounting-shell select{min-width:0;max-width:100%}
.accounting-tabs{display:flex;gap:4px;margin:18px 0 14px;border-bottom:1px solid #9fb5cc}.accounting-tab{appearance:none;border:0;border-bottom:3px solid transparent;background:transparent;color:#29445d;font:inherit;font-weight:800;padding:11px 18px;cursor:pointer}.accounting-tab:hover{color:#006fe8}.accounting-tab[aria-selected="true"]{color:#006fe8;border-bottom-color:#006fe8}.accounting-tab:focus-visible{outline:3px solid #87bfff;outline-offset:2px}.accounting-records{padding:20px}.records-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}.records-heading h2{margin:0 0 4px}.records-heading p{margin:0}.records-heading>strong{font-size:1.25rem}.records-status{min-height:1.5em}.table-scroll{overflow-x:auto;border:1px solid #d9e2ec;border-radius:10px}.accounting-records table{width:100%;border-collapse:collapse;min-width:920px}.accounting-records th,.accounting-records td{padding:12px 14px;border-bottom:1px solid #d9e2ec;text-align:left;vertical-align:top}.accounting-records th{background:#eef4fa;font-size:.85rem;white-space:nowrap}.accounting-records tr:last-child td{border-bottom:0}.accounting-records .amount{text-align:right;white-space:nowrap}.record-number{font-weight:700}.record-reference,.record-description{display:block;color:#536274;font-size:.9rem;margin-top:3px;max-width:280px}.attachment-list{display:flex;flex-wrap:wrap;gap:6px;min-width:90px}.attachment-button{border:1px solid #7f9ab5;border-radius:7px;background:#fff;color:#0a4f84;font:inherit;font-size:.85rem;font-weight:700;padding:6px 9px;cursor:pointer}.attachment-button:hover{background:#eef7ff}.attachment-button:disabled{opacity:.6;cursor:wait}.attachment-dialog{width:min(900px,calc(100% - 32px));max-height:calc(100vh - 32px);border:1px solid #9fb5cc;border-radius:16px;padding:20px;color:#092038}.attachment-dialog::backdrop{background:rgba(4,20,35,.72)}.attachment-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.attachment-dialog-heading h2{margin:0}.dialog-close{border:0;background:transparent;color:#092038;font-size:2rem;line-height:1;cursor:pointer}.attachment-dialog img{display:block;max-width:100%;max-height:70vh;margin:16px auto;border-radius:8px}.attachment-dialog .button{display:inline-block;margin-top:12px;text-decoration:none}
.record-status-badge{display:inline-block;padding:3px 8px;border:1px solid currentColor;border-radius:6px;font-size:.8rem;font-weight:700;white-space:nowrap}.status-approved{color:#126044;background:#eaf7ef}.status-pending{color:#775000;background:#fff5d6}.status-excluded{color:#83312c;background:#fff0ee}.record-excluded{background:#fcf6f5}.record-status-note{display:block;margin-top:5px;font-size:.8rem;color:#83312c}
.chart-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:20px 0 4px;padding:16px;border-radius:12px;background:#eef4fa}.chart-range label{display:grid;grid-template-columns:1fr auto;gap:8px;color:#29445d;font-weight:800}.chart-range output{color:#006fe8}.chart-range input{grid-column:1/-1;width:100%;accent-color:#0078d4;cursor:pointer}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.chart-card{min-width:0;padding:16px;border:1px solid #d9e2ec;border-radius:12px}.chart-card h3{margin:0 0 12px}.chart-frame{position:relative;height:320px}
@media(max-width:900px){.range-controls{grid-template-columns:1fr 1fr}.range-controls>div{grid-column:1/-1}.chart-grid{grid-template-columns:1fr}.chart-frame{height:280px}}
@media(max-width:700px){.accounting-shell{padding:26px 16px 60px}.accounting-card,.accounting-records{padding:16px}.accounting-totals,.form-grid,.range-controls,.chart-range{grid-template-columns:1fr}.form-grid .wide,.range-controls>div{grid-column:auto}.range-controls label,.range-controls button{width:100%}.accounting-tabs{overflow-x:auto}.accounting-tab{padding:10px 14px}.records-heading{align-items:start;flex-direction:column}}

.document-balances{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.document-balances .accounting-card{margin:0}.document-balances h2{margin-top:0}.document-balances dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.document-balances dd{margin:0;text-align:right;font-weight:700;overflow-wrap:anywhere}.document-balances dt{font-weight:400}@media(max-width:640px){.document-balances{grid-template-columns:1fr}}
.records-filter{display:flex;align-items:center;gap:8px;width:fit-content;min-height:44px;margin-top:12px;font-weight:600;cursor:pointer}.records-filter input{width:18px;height:18px;margin:0;accent-color:#006fe8}.records-filter input:focus-visible{outline:3px solid #87bfff;outline-offset:3px}

/* Keep the working area compact while retaining comfortable controls. */
.accounting-shell{max-width:none;padding:16px 24px 40px}
.accounting-shell>.eyebrow{margin:0 0 6px}
.accounting-shell .admin-page-heading{align-items:center;gap:12px}
.accounting-shell h1{font-size:28px;line-height:1.2;margin:0}
.accounting-shell>p:not(.eyebrow){margin:4px 0 8px;font-size:.875rem}
.accounting-shell .admin-page-actions .button{min-height:40px;padding:9px 16px}
.accounting-shell .range-controls{margin:10px 0;padding:10px 14px;gap:12px;align-items:center}
.range-controls h2{font-size:1rem}
.range-controls p{font-size:.8rem}
.range-controls label{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;font-size:.875rem}
.range-controls input{width:100%;min-width:0;padding:8px}
.range-controls .button{min-height:40px;padding:9px 14px}
.accounting-tabs{margin:8px 0}
.accounting-tab{padding:9px 16px}
.accounting-records{padding:12px 14px}
.records-heading{align-items:center;gap:12px;margin-bottom:8px}
.records-heading h2{font-size:1.15rem;margin:0}
.records-heading p{font-size:.85rem}
.records-actions{display:flex;align-items:center;gap:20px;flex-shrink:0}
.records-actions strong{font-size:1rem;white-space:nowrap}
.records-actions .records-filter{margin:0;font-size:.875rem;min-height:36px;white-space:nowrap}
.records-status{min-height:0;margin:0 0 8px;font-size:.8rem}
.records-status:empty{margin:0}
.accounting-records th,.accounting-records td{padding:8px 12px}
.accounting-records td.record-description{display:table-cell;margin-top:0}
@media(max-width:900px){.accounting-shell .range-controls>div{grid-column:1/-1}.records-heading{align-items:start;flex-wrap:wrap}}
@media(max-width:700px){.accounting-shell{padding:12px 12px 32px}.accounting-shell .admin-page-heading{align-items:start}.accounting-shell .range-controls{grid-template-columns:1fr 1fr;gap:10px}.range-controls label{display:grid;grid-template-columns:1fr;gap:4px}.range-controls>button{grid-column:1/-1}.records-heading{gap:4px}.records-actions{width:100%;justify-content:space-between;gap:12px}.accounting-records{padding:10px}}

.accounting-totals{gap:10px;margin:10px 0}.accounting-totals article{padding:14px 18px;border-radius:10px}.accounting-totals strong{font-size:1.8rem;margin-top:6px}
.document-balances{gap:12px}.document-balances .accounting-card{padding:14px 18px}.document-balances h2{font-size:1.15rem;margin:0 0 10px}.document-balances h3{font-size:1rem;margin:8px 0}.document-balances dl{gap:7px;margin:10px 0}.document-balances .button{min-height:36px;padding:8px 12px}
.record-notification{background:#eef6ff;box-shadow:inset 4px 0 #087cf0}.record-notification .record-number::before{content:'Updated � ';color:#0063ad;font-weight:700}
.notification-record-link{border:0;background:none;color:#0063ad;font:inherit;text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:4px 0}
#accounting-notification-detail>.button{margin-right:8px}

/* Compact accounting overview; supporting details stay in the info popover. */
.accounting-title{display:flex;align-items:center;gap:4px}
.accounting-info{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:#31516d;cursor:pointer;flex-shrink:0}
.accounting-info svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.accounting-info:focus-visible{outline:3px solid #087cf0;border-radius:50%}
.accounting-help{box-sizing:border-box;width:min(520px,calc(100% - 32px));max-height:80dvh;overflow:auto;padding:20px;border:1px solid #9fb5cc;border-radius:12px;background:#fff;color:#17263b;box-shadow:0 12px 40px #001c3340}
.accounting-help::backdrop{background:#001c3340}
.accounting-help h2{margin:0;font-size:1.2rem}
.accounting-help p{font-size:.9rem;line-height:1.5}
#accounting-status:empty{display:none}
.accounting-shell .admin-page-heading{margin-bottom:4px}
.accounting-shell .range-controls{grid-template-columns:minmax(180px,1fr) repeat(2,minmax(130px,180px)) auto}
.range-controls input{box-sizing:border-box;max-width:100%}
@media(max-width:700px){
 .accounting-shell{padding:8px 12px 24px}
 .accounting-shell .admin-page-heading{gap:2px}
 .accounting-shell h1{font-size:24px}
 .accounting-shell .admin-page-actions{gap:8px;margin:0}
 .accounting-shell .admin-page-actions .button{min-height:44px;padding:8px 12px}
 .accounting-shell .range-controls{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;gap:8px;margin:8px 0}
 .accounting-shell .range-controls>div{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}
 .range-controls h2{font-size:.9rem;margin:0}
 .range-controls label{min-width:0;font-size:.8rem}
 .range-controls input{min-height:44px;padding:6px;font-size:.875rem}
 .range-controls .button{min-height:44px;padding:6px 10px}
 .accounting-tabs{gap:0;margin:6px 0}
 .accounting-tab{flex:1;min-height:44px;padding:8px 4px;font-size:.9rem}
 .accounting-totals{gap:6px;margin:8px 0}
 .accounting-totals article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:8px}
 .accounting-totals article span{font-size:.85rem}
 .accounting-totals strong{flex-shrink:0;font-size:1.35rem;margin:0}
 .document-balances{gap:8px}
 .document-balances .accounting-card{padding:12px}
}
.accounting-shell .form-grid>*{min-width:0}
.accounting-shell .form-grid input,.accounting-shell .form-grid textarea{box-sizing:border-box;width:100%;min-width:0}
@media(max-width:700px){.accounting-shell .form-grid{grid-template-columns:minmax(0,1fr)}}
