[role=tabpanel][hidden]{display:none!important}.cost-tabs{display:flex;gap:8px;margin-top:22px;border-bottom:1px solid #bbcbb9;padding-bottom:10px}.cost-tabs button{font-size:14px;font-weight:600}.cost-tabs [aria-selected=true]{background:#244b3b;color:#fffef8;border-color:#244b3b}.map-common{margin:18px 0;padding:20px 26px}.map-common p{margin:12px 0 0}.map-intro{margin-top:18px}.map-warning{background:#faf0d9;border-left:3px solid #bc9459;padding:14px 18px}.map-jump{display:flex;flex-wrap:wrap;gap:9px 22px;font-size:12px}.map-root{max-width:640px;margin:26px auto 0;padding:22px;text-align:center;background:#244b3b;border-radius:12px;color:#fffef8}.map-root span,.map-root small{display:block}.map-root strong{display:block;font:36px/1.3 Georgia,serif;margin:8px 0}.map-root small{color:#e3eddf;font-size:11px}.map-connector{text-align:center;font-size:25px;color:#839780;line-height:38px}.map-lanes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;position:relative}.map-lane{border:1px solid #bbcdbb;border-top:4px solid #86a389;border-radius:9px;padding:17px;background:#edf3e8}.map-lane.debt{background:#f4eedf;border-color:#ddcaaa}.map-lane.reserve{background:#f1eaf8;border-color:#cdbcdc}.map-lane.envelope{background:#eaf0f6;border-color:#b9ccd9}.map-lane h3{font-size:14px;margin:0 0 8px}.map-lane strong{display:block;font-size:23px;line-height:1.3;overflow-wrap:anywhere}.map-lane small{display:block;font-size:11px;margin:6px 0}.map-lane p{font-size:12px;margin:13px 0 0}.map-lane ul{font-size:11px;padding-left:17px;margin-bottom:0}.map-outside{border:1px dashed #b3a180;border-radius:9px;padding:18px 22px;background:#fcf6e9;margin:22px 0}.map-outside h3{font-size:16px;margin:0 0 10px}#map-outside-values{display:flex;flex-wrap:wrap;gap:10px 26px;font-size:13px}#map-outside-values strong{display:block}.map-families{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px}.map-family{border:1px solid #d5dfd1;border-radius:9px;padding:19px;display:flex;flex-direction:column;background:#f6f7ef}.map-family h3,.map-review h3,.map-source h3{font:20px/1.25 Georgia,serif;margin:0 0 12px}.map-family p{font-size:12px;line-height:1.65;margin:0 0 12px}.map-family ul{list-style:none;padding:0;margin:0 0 16px;font-size:12px}.map-family li{border-top:1px solid #dce3d5;padding:8px 0;display:flex;align-items:baseline;gap:8px}.map-code{font:10px monospace;color:#5e6c59;min-width:28px}.map-family button{font-size:11px;padding:8px 10px;margin-top:auto;align-self:start}.map-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px}.map-filters label{font-size:12px}.map-filters input,.map-filters select{margin-top:6px}.map-tag{display:inline-block;padding:3px 7px;background:#edf0e8;border-radius:4px;font-size:10px;font-weight:600;white-space:normal}.map-tag.zero{background:#eee3f8}.map-tag.unresolved{background:#f7ead1}.map-tag.outside{background:#e9edf3}.map-tag.formula{background:#e5efdf}#map-coverage{min-width:880px}#map-coverage td{white-space:normal;text-align:left;vertical-align:top;font-size:12px}#map-coverage th{vertical-align:top}#map-coverage th:first-child{width:24%;min-width:220px}#map-coverage th:nth-child(2){width:15%;text-align:left}#map-coverage th:nth-child(3){width:14%}#map-coverage td:nth-child(3){text-align:right;font-variant-numeric:tabular-nums}#map-coverage th:nth-child(4){text-align:left}#map-coverage td small{display:block;font-size:11px;margin-top:8px;color:#667361}.map-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.map-review{border-top:2px solid #c8d3bd;padding:18px 3px}.map-review .map-tag{margin-bottom:12px}.map-review p{font-size:13px}.map-review small{font-size:11px;color:#67765f}.map-sources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.map-source{background:#f5f4ed;border:1px solid #d5dfd1;border-radius:9px;padding:20px;min-width:0}.map-source p{font-size:13px}.map-source small{display:block;font-size:11px;margin-top:6px}.map-source table{font-size:12px}.map-source th:first-child{min-width:160px}.map-source td{white-space:normal}.map-source th,.map-source td{padding:10px 6px}.map-source caption{text-align:left;font-size:11px;color:#6c775f;padding-bottom:10px}#map-error:not(:empty){background:#f7e4d4;padding:12px;border-radius:6px}#expense-map,#cost-breakdown{outline-offset:4px}@media(max-width:1050px){.map-lanes,.map-families{grid-template-columns:repeat(2,minmax(0,1fr))}.map-sources{grid-template-columns:1fr}}@media(max-width:600px){.cost-tabs button{font-size:12px;padding:9px}.map-common{padding:18px}.map-families,.map-checks,.map-filters{grid-template-columns:1fr}.map-lanes{gap:9px}.map-lane{padding:12px}.map-lane strong{font-size:19px}.map-root strong{font-size:29px}.map-root{padding:20px 15px}.map-root small{font-size:10px}.map-source{padding:16px}.map-jump{gap:9px 15px}.map-review h3{font-size:19px}}@media print{.cost-tabs,.map-common,#download-coverage,.map-filters,.map-family button{display:none}.map-lanes{grid-template-columns:repeat(4,1fr)}.map-families{grid-template-columns:repeat(2,1fr)}.map-family,.map-review,.map-source{break-inside:avoid}.map-source{background:white}.map-root{color:#244b3b;background:white;border:1px solid}.map-root small{color:#244b3b}}
/* Keep the two views reachable while reading the full cost register. */
.cost-tabs{position:sticky;top:0;z-index:5;background:#f5f4ed;padding-top:10px}.map-jump a{scroll-margin-top:70px}#expense-map section{scroll-margin-top:75px}@media print{.cost-tabs{display:none}}
/* Native disclosures keep the ledger light and usable with a keyboard. */
.tree-controls{display:flex;gap:8px;flex-shrink:0}.tree-controls button{font-size:12px;padding:8px 12px}.account-head,.account-node>summary{display:grid;grid-template-columns:minmax(245px,1fr) 145px 145px 105px 55px;gap:12px;align-items:center}.account-head{font-size:10px;color:#66715f;text-align:right;padding:10px 15px 10px 36px;border-bottom:2px solid #8b9e83}.account-head span:first-child{text-align:left}.account-node{--account-fill:#edf3e8;--account-line:#bccdb5;margin:8px 0;border:1px solid var(--account-line);border-radius:7px;background:#fffef9;overflow:hidden}.account-node.debt{--account-fill:#f7efdf;--account-line:#d9c8aa}.account-node.reserve{--account-fill:#f2eaf7;--account-line:#cabbd8}.account-node.envelope{--account-fill:#eaf1f6;--account-line:#bacbd8}.account-node.outside,.account-node.account-memo{--account-fill:#f0f0ee;--account-line:#d0d1cb}.account-node>summary{position:relative;list-style:none;cursor:pointer;padding:12px 14px 12px 35px;background:var(--account-fill);font-size:13px;line-height:1.4;min-height:73px;user-select:none}.account-node>summary::-webkit-details-marker{display:none}.account-node>summary:before{content:'▸';position:absolute;left:13px;top:25px;font-size:15px;color:#567051}.account-node[open]>summary:before{content:'▾'}.account-name{display:grid;gap:3px;min-width:0}.account-name strong{font-size:13px;font-weight:600;overflow-wrap:anywhere}.account-code{font:10px/1.2 ui-monospace,monospace;letter-spacing:.3px;color:#6a775f}.account-name small{font-size:10px;color:#677260}.account-value,.account-unit,.account-share{display:block;text-align:right;padding:8px 9px;background:#fffefa;border:1px solid var(--account-line);border-radius:4px;min-height:35px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:12px}.account-value{font-weight:650}.account-share{font-size:11px}.account-zero>summary .account-value,.account-zero>summary .account-unit,.account-zero>summary .account-share{background:#e9def3;border-color:#cbb9db}.account-memo>summary .account-value,.account-memo>summary .account-unit,.account-memo>summary .account-share{background:#f9f8f4;font-size:11px;color:#6b7465}.account-chart{text-align:center;font-size:10px;color:#697564}.account-chart a{display:block;white-space:nowrap;font-size:11px;text-decoration:none;border:1px solid #adbda3;border-radius:4px;padding:8px 4px;background:#fffef9}.account-chart a:hover{background:#dfead7}.account-content{padding:0 12px 6px 17px}.account-content>p{font-size:11px;line-height:1.65;margin:11px 0;color:#596a54;max-width:1000px}.account-children{padding-left:13px;border-left:1px solid #b8c6ae;position:relative}.account-children>.account-node{position:relative}.account-node[data-node=monthly]>summary{--account-fill:#e2eddd;border-bottom:1px solid #c8d5c0}.account-node[data-node=monthly]>summary .account-value{font-size:17px}.map-families{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.map-family{display:block;margin:0;padding:0;background:#f7f7ef}.map-family>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px;font-size:13px}.map-family>summary:before{font-size:15px}.map-family>summary strong{margin-right:auto}.map-family>summary span{font-size:10px;white-space:nowrap}.map-family>p,.map-family>ul{margin:0 18px 14px}.map-family>p{padding-top:8px}.map-family>button{margin:0 18px 18px}.account-head~#accounting-tree{font-family:Arial,sans-serif}@media(max-width:1100px){.account-head,.account-node>summary{grid-template-columns:minmax(170px,1fr) 120px 120px 85px 48px;gap:8px}.account-content{padding-left:9px;padding-right:7px}.account-children{padding-left:8px}.account-value,.account-unit{padding:7px 5px}}@media(max-width:800px){.account-head{display:none}.account-node>summary{grid-template-columns:repeat(3,minmax(0,1fr)) 45px;padding:12px 10px 12px 27px;gap:9px}.account-name{grid-column:1/4}.account-chart{grid-column:4;grid-row:1}.account-value,.account-unit,.account-share{grid-row:2;font-size:11px;text-align:left;padding:7px}.account-value:before,.account-unit:before,.account-share:before{content:attr(data-label);display:block;font-size:8px;font-weight:400;margin-bottom:5px;color:#6b7465}.account-share{grid-column:3/5}.account-node[data-node=monthly]>summary .account-value{font-size:13px}.account-node>summary:before{left:9px;top:29px}.account-children{padding-left:6px}.account-content{padding-left:7px;padding-right:5px}.account-content>p{font-size:10px}.map-families{grid-template-columns:1fr}.tree-controls{flex-wrap:wrap}.account-unit{overflow-wrap:anywhere}.account-name strong{font-size:12px}}@media print{.tree-controls,.account-chart{display:none}.account-node>summary{grid-template-columns:1fr 130px 130px 90px}.account-node{break-inside:avoid}}
/* Keep currency amounts intact at the deepest mobile level. */
@media(max-width:800px){.account-node>summary{grid-template-columns:repeat(2,minmax(0,1fr))}.account-name{grid-column:1/-1;padding-right:43px}.account-chart{position:absolute;top:13px;right:10px;width:41px}.account-value{grid-column:1;white-space:nowrap;overflow-wrap:normal}.account-unit{grid-column:2;white-space:nowrap;overflow-wrap:normal}.account-share{grid-column:1/-1;grid-row:3;text-align:right;padding:5px 8px}.account-share:before{display:inline;margin:0 10px 0 0}.account-value:before,.account-unit:before{white-space:normal}}
