:root{--bg:#f6f7f9;--panel:#fff;--text:#1c2430;--muted:#6a7585;--border:#dde2ea;--accent:#1d4f91;--wf:#b5121b;--sbi:#1d4f91;--good:#1a7f4b;--bad:#b5121b;--warn:#b7791f;color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--bg);margin:0}a{color:var(--accent)}.muted{color:var(--muted)}.error{color:var(--bad)}header.top{background:var(--panel);border-bottom:1px solid var(--border);z-index:5;position:sticky;top:0}header.top .inner{flex-wrap:wrap;align-items:center;gap:24px;max-width:1200px;height:52px;margin:0 auto;padding:0 20px;display:flex}header.top .inner>*,header.top nav,header.top .who,.two>*,.cards>*,.toolbar>*{min-width:0}header.top nav a,header.top .adminbar .inner>*{flex-shrink:0}header.top .brand{white-space:nowrap;font-weight:700}header.top nav{flex:1;gap:4px;display:flex;overflow-x:auto}header.top nav a{color:var(--text);white-space:nowrap;border-radius:6px;padding:6px 10px;font-size:14px;text-decoration:none}header.top nav a:hover{background:var(--bg)}header.top nav a.active{color:var(--accent);background:#e6eefa;font-weight:600}header.top .who{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}main.page{max-width:1200px;margin:0 auto;padding:20px}h1{margin:4px 0;font-size:24px}h2{margin:0 0 10px;font-size:17px}.cards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:16px 0;display:grid}.card,.panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.panel{margin:16px 0}.card .label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.card .value{font-variant-numeric:tabular-nums;margin:4px 0 2px;font-size:24px;font-weight:700}.card .sub{color:var(--muted);font-size:12px}.pos{color:var(--good)}.neg{color:var(--bad)}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}th,td{border-bottom:1px solid var(--border);text-align:right;white-space:nowrap;padding:6px 10px}th:first-child,td:first-child{text-align:left}th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600}.scroll{overflow-x:auto}.badge{color:var(--muted);background:#eef1f6;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.badge.warn{color:var(--warn);background:#fdf3dc}.badge.good{color:var(--good);background:#dff3e8}.badge.bad{color:var(--bad);background:#fbe3e4}.banner{color:#6b4b0b;background:#fdf3dc;border:1px solid #f0d9a0;border-radius:8px;margin:12px 0;padding:10px 14px;font-size:14px}.banner a{color:inherit;font-weight:600}.toolbar{flex-wrap:wrap;align-items:center;gap:14px;margin:12px 0;display:flex}.toolbar label,form.grid label{color:var(--muted);flex-direction:column;gap:3px;font-size:13px;display:flex}input,select,textarea,button{font:inherit}input,select,textarea{border:1px solid var(--border);color:var(--text);background:#fff;border-radius:6px;padding:6px 8px}button{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:6px;padding:7px 14px}button.secondary{color:var(--accent);background:#fff}button:disabled{opacity:.6;cursor:default}button.danger{color:var(--bad);border-color:var(--bad);background:#fff}form.grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:10px;display:grid}.login{background:var(--panel);border:1px solid var(--border);border-radius:12px;width:min(380px,100% - 28px);margin:8vh auto;padding:24px}.login form{flex-direction:column;gap:12px;display:flex}.login label{flex-direction:column;gap:4px;font-size:13px;display:flex}.two{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=800px){.two{grid-template-columns:1fr}}.legend{flex-wrap:wrap;gap:14px;margin:6px 0;font-size:13px;display:flex}.legend i{vertical-align:-1px;border-radius:3px;width:12px;height:12px;margin-right:5px;display:inline-block}.dot{border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}header.top .adminbar{border-top:1px solid var(--border);background:#f1f4f9}header.top .adminbar .inner{gap:6px;height:36px;font-size:13px}header.top .adminbar a{color:var(--text);border-radius:6px;padding:4px 9px;text-decoration:none}header.top .adminbar a.active{color:var(--accent);background:#dfe8f6;font-weight:600}header.top nav{flex-wrap:wrap;overflow-x:visible}header.top .adminbar .inner{flex-wrap:nowrap;overflow-x:auto}header.top .adminbar a,header.top .adminbar .muted{white-space:nowrap}.framing{grid-template-columns:repeat(3,1fr);gap:20px;font-size:14px;line-height:1.45;display:grid}@media (width<=800px){.framing{grid-template-columns:1fr}}.framing .label,.card .label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:12px}.card .value small{color:var(--muted);font-size:14px;font-weight:400}tr.diff td{border-top:2px solid var(--border);font-weight:600}th .span{text-transform:none;letter-spacing:0;font-weight:400}.note{color:var(--muted);margin:10px 0 0;font-size:13px;line-height:1.45}.filedrop{border:2px dashed var(--border);text-align:center;cursor:pointer;background:#fafbfd;border-radius:10px;padding:22px;font-size:14px}.filedrop:hover,.filedrop:focus-visible{border-color:var(--accent);outline:none}.filedrop.over{border-color:var(--accent);background:#e6eefa}.filedrop.disabled{cursor:default;opacity:.6}@media (width<=700px){.wide-only{display:none}header.top{position:static}header.top .inner{gap:8px 12px;height:auto;padding:8px 14px}header.top .brand{font-size:15px}header.top nav{scrollbar-width:none;flex-wrap:nowrap;flex:100%;order:3;gap:2px;padding-bottom:2px;overflow-x:auto}header.top nav::-webkit-scrollbar{display:none}header.top .who{margin-left:auto;font-size:12px}header.top .who .email{display:none}header.top .adminbar .inner{height:auto;padding:6px 14px;font-size:12px}main.page{padding:14px}h1{font-size:20px}.card .value{font-size:21px}.panel,.card{padding:12px}th,td{padding:6px 8px}.framing{gap:14px}}@media (width<=900px){.col-bar{display:none}}@media (pointer:coarse){button,input:not([type=checkbox]),select{min-height:38px}button{padding:9px 14px}input,select,textarea{font-size:16px}}@media (width<=700px){.login{margin-top:24px;padding:20px}}.panel.scroll{scrollbar-width:thin}.print-only{display:none}@media print{@page{size:letter;margin:.35in}:root{--bg:#fff;font-size:9.5pt}body{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff}header.top,.toolbar,.no-print,button,form.grid,.banner a{display:none!important}.print-only{display:block}.print-head{border-bottom:2px solid var(--text);margin-bottom:6px;padding-bottom:4px}.print-head strong{font-size:13pt}main.page{zoom:.88;max-width:none;padding:0}h1{margin:2px 0;font-size:18pt}h2{margin-bottom:4px;font-size:13pt}h1,h2,h3{break-after:avoid}.panel,.card{box-shadow:none;break-inside:avoid;border-color:#bbb;border-radius:4px}.panel{margin:4px 0;padding:5px 9px}.cards{grid-template-columns:1fr 1fr 1fr 1.8fr;gap:6px;margin:4px 0}.banner{margin:4px 0;padding:4px 8px;font-size:8.5pt}.card .value{font-size:14pt}.two{grid-template-columns:1fr 1fr}.framing{grid-template-columns:1fr 1fr 1fr}.scroll{overflow:visible}table{font-size:8.5pt}.note{margin:4px 0 0;font-size:8.5pt;line-height:1.3}th,td{white-space:normal;padding:2px 5px}th:first-child,td:first-child{white-space:nowrap}thead{display:table-header-group}tr,.recharts-wrapper,svg{break-inside:avoid}.recharts-wrapper,.recharts-legend-wrapper{max-width:100%}.recharts-tooltip-wrapper{display:none!important}a{color:inherit;text-decoration:none}}details.data-table{margin:6px 0 0;font-size:13px}details.data-table summary{cursor:pointer;color:var(--accent)}details.data-table .scroll{max-height:320px;margin-top:8px;overflow:auto}details.data-table th{background:var(--panel);position:sticky;top:0}@media print{details.data-table{display:none}}
