:root{--green:#1f563e;--deep:#173d2f;--paper:#f7f5ef;--panel:#fffefb;--line:#dedfd6;--muted:#647267;--gold:#f4e7b6;color:var(--deep);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,a{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}a{color:var(--green)}button,input{border:1px solid var(--line);border-radius:7px;padding:10px 12px;background:var(--panel);color:var(--deep)}button:hover{background:#edf3eb}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,.table-wrap:focus-visible{outline:3px solid #bd963c;outline-offset:3px}[hidden]{display:none!important}.analysis-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 20px;border-bottom:1px solid var(--line);background:var(--panel)}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:18px;text-decoration:none}.brand-mark{display:grid;place-items:center;background:var(--green);color:white;border-radius:9px;width:36px;height:36px;font-size:15px}.brand small{display:block;font-size:11px;font-weight:500;color:var(--muted);margin-top:4px}.header-actions{display:flex;align-items:center;gap:20px}.app-link{text-decoration:none;font-size:13px}main{max-width:1800px;margin:auto;padding:20px}.heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}h1{font-size:26px;letter-spacing:-.8px;margin:4px 0 9px}p{line-height:1.5;margin:8px 0}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;font-size:10px;font-weight:800;color:var(--muted);margin:0}.subtitle{color:var(--muted)}.period-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}label{display:grid;gap:6px;font-weight:700;font-size:12px}.period-form input{width:155px;font-size:14px}.primary{background:var(--green);border-color:var(--green);color:white;font-weight:700}.primary:hover{background:var(--deep)}.analysis-context{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 24px;color:var(--muted);font-size:12px;margin-bottom:12px}.analysis-context p{margin:0}.estimate-key{font-weight:900;color:#846620}.table-wrap{max-height:calc(100vh - 260px);min-height:280px;overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--panel);margin-top:12px;isolation:isolate}table{border-spacing:0;width:100%;min-width:1120px;font-size:13px}thead{position:sticky;top:0;z-index:4}th,td{border-bottom:1px solid #e7e8e0;padding:6px 10px;text-align:right;white-space:nowrap;min-width:100px;font-variant-numeric:tabular-nums}thead th{background:var(--green);color:white;font-size:12px;font-weight:800;height:42px}thead th small{display:block;font-weight:400;color:#d8e7d9;margin-top:3px;font-size:10px}thead th:first-child,tbody th{position:sticky;left:0;text-align:left;min-width:230px;width:230px;max-width:260px;white-space:normal}thead th:first-child{z-index:5;background:var(--green)}tbody th{z-index:2;background:var(--panel);font-weight:500;border-right:1px solid var(--line);line-height:1.35}.row-label-note{display:block;font-size:10px;color:var(--muted);margin-top:4px;font-weight:400}tbody tr:hover td,tbody tr:hover th{background:#f2f6ef}.section-row th{position:static;background:#eaf0e5;text-transform:uppercase;letter-spacing:1.1px;font-size:10px;font-weight:800;padding:6px 10px}.section-row th .section-sticky{display:block;position:sticky;left:10px;width:210px}.summary-row td,.summary-row th{background:#edf3e8;font-weight:800}.result-row td,.result-row th{background:var(--gold);font-weight:800}.result-row:hover td,.result-row:hover th{background:#efe0a7}.aggregate{background:#f3f3ec;font-weight:700}.empty{color:#8c958e}.negative{color:#9b4339}.cell-button{border:0;background:none;padding:0;width:100%;text-align:right;white-space:nowrap;border-radius:2px;line-height:1.3;color:inherit;font-weight:inherit}.cell-button:hover{background:none;text-decoration:underline;text-underline-offset:4px}.estimate-mark{color:#8a6a29;margin-right:4px;font-weight:400}.partial-col{box-shadow:inset 2px 0 #c9aa65}thead .partial-col{background:#5a6341}.partial-notice{font-size:12px;padding:12px 15px;border-left:3px solid #c7a255;background:#fff9e5;margin-top:14px}.method{margin-top:20px;color:var(--muted);font-size:12px;max-width:1100px}.method summary{cursor:pointer;color:var(--green);font-weight:700}.method li{margin:8px 0;line-height:1.5}.status-panel{padding:24px 0;color:var(--muted)}.status-panel.error{color:#91473b}.version{font-size:10px;color:var(--muted);margin-top:12px}.login-panel{max-width:400px;padding:28px;background:var(--panel);border:1px solid var(--line);border-radius:12px;margin:7vh auto}.login-panel form{display:grid;gap:16px;margin-top:24px}.login-panel input{font-size:16px}.login-panel [role=alert]{color:#91473b;margin:0;font-size:13px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{border:1px solid var(--line);border-radius:12px;max-width:620px;width:calc(100% - 32px);padding:22px;color:var(--deep);max-height:80vh;overflow:auto}dialog::backdrop{background:#142a24a0}.dialog-top{display:flex;justify-content:space-between;align-items:start;gap:18px}.dialog-top h2{font-size:18px;margin:4px 0 14px}.dialog-top button{padding:5px 8px}.source-item{padding:10px 0;border-top:1px solid var(--line);font-size:12px;overflow-wrap:anywhere}.source-item small{display:block;color:var(--muted);margin-top:5px}.cell-amount{font-size:24px;font-weight:800}.cell-notes{color:var(--muted);font-size:13px}@media(min-width:1500px){th,td{padding:6px 10px;min-width:105px}tbody th,thead th:first-child{min-width:240px}}@media(max-width:850px){main{padding:14px 10px}.analysis-header{padding:10px 12px}.heading-row{align-items:start;flex-direction:column;gap:14px}h1{font-size:24px}.app-link{display:none}.brand{font-size:16px}.table-wrap{max-height:70vh}thead th:first-child,tbody th{min-width:180px;width:180px}.period-form input{width:155px}.header-actions{gap:8px}.analysis-context{gap:8px}.period-form input{font-size:16px}th,td{padding:6px 9px}}
@media print{.analysis-header,.period-form,.method,.version,.header-actions{display:none}main{padding:0;max-width:none}.table-wrap{max-height:none;overflow:visible;border:none}table{min-width:0;font-size:9px}th,td{padding:7px;min-width:0}thead th:first-child,tbody th{min-width:150px;width:150px}thead,thead th:first-child,tbody th{position:static}body{background:white}.heading-row{margin:0 0 10px}h1{font-size:22px}}

.snapshot-date{display:block;color:var(--muted);font-size:10px;font-weight:400;margin-top:2px}
.heading-row{margin-bottom:12px}.heading-row h1{margin:0}.table-wrap{max-height:calc(100vh - 155px)}
.has-hover-details{cursor:help;text-decoration:underline dotted;text-underline-offset:4px}.has-hover-details:focus-visible{outline:3px solid #bd963c;outline-offset:-3px}
.analysis-tooltip{position:fixed;z-index:20;width:max-content;max-width:min(440px,calc(100vw - 16px));max-height:min(420px,calc(100vh - 16px));overflow:auto;padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:9px;box-shadow:0 8px 30px #173d2f30;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.analysis-tooltip strong{display:block;font-size:14px}.analysis-tooltip .tooltip-total{font-size:20px;font-weight:800;margin:6px 0}.analysis-tooltip small{display:block;color:var(--muted);margin-bottom:10px}.tooltip-line{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:7px 0;border-top:1px solid var(--line)}.tooltip-line span{min-width:0}.tooltip-line b{white-space:nowrap}.tooltip-note{font-size:11px;color:var(--muted);max-width:400px}
@media print{.analysis-tooltip{display:none!important}}
