:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;background:#eef2f6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit}button,input,select{font:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{width:min(1420px,100vw - 48px);margin:0 auto;padding:32px 0 56px}.access-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.access-panel{background:#ffffffeb;border:1px solid #d4dce5;border-radius:8px;width:min(440px,100%);padding:28px;box-shadow:0 16px 42px #1720331f}.access-form{gap:16px;margin-top:24px;display:grid}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;padding:8px 0 24px;display:flex}.header-actions{align-items:center;gap:12px;display:flex}.eyebrow{color:#45616f;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:700}h1,h2,p{margin:0}h1{font-size:34px;line-height:1.15}h2{font-size:18px;line-height:1.2}.safety-note{color:#314555;background:#ffffffb8;border:1px solid #b8c2cc;border-radius:8px;flex:none;max-width:380px;padding:12px 14px;font-size:14px;line-height:1.35}.filter-band,.summary-band,.weekly-report-band,.actions-band,.data-section{background:#ffffffdb;border:1px solid #d4dce5;box-shadow:0 8px 24px #1720330f}.filter-band{border-radius:8px;grid-template-columns:1fr auto;align-items:end;gap:18px;padding:18px;display:grid}.filter-grid{grid-template-columns:repeat(5,minmax(150px,1fr));gap:14px;display:grid}label{color:#4b5f6d;gap:7px;font-size:13px;font-weight:700;display:grid}input,select{color:#172033;background:#fff;border:1px solid #bec9d4;border-radius:6px;outline:none;width:100%;height:42px;padding:0 12px}input:focus,select:focus{border-color:#2f6f9f;box-shadow:0 0 0 3px #2f6f9f29}.primary-button,.secondary-button,.link-button{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;min-height:42px;font-weight:700;text-decoration:none;display:inline-flex}.primary-button{color:#fff;background:#1f6f5f;min-width:116px;padding:0 18px}.primary-button:disabled{cursor:progress;opacity:.7}.secondary-button{color:#1c3f55;background:#fff;border-color:#99a9b8;padding:0 14px}.secondary-button:disabled{cursor:progress;opacity:.7}.link-button{color:#245a77;background:#f7fbfd;border-color:#bfd2df;min-height:34px;padding:0 10px;font-size:13px}.flag-checkbox{color:#17614d;background:#eef8f3;border:1px solid #b7c7d2;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-width:104px;height:34px;font-size:13px;font-weight:800;display:inline-flex}.flag-checkbox input{accent-color:#a43d3d;width:18px;height:18px;margin:0}.flag-checkbox input:disabled{cursor:not-allowed}.flag-checkbox:has(input:checked){color:#8a2c2c;background:#fff2f2;border-color:#d0a4a4}.flag-checkbox:has(input:disabled){color:#8292a0;background:#f3f6f8}.summary-band{border-radius:8px;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:18px;display:grid;overflow:hidden}.summary-item{background:#fff;gap:8px;min-height:96px;padding:18px;display:grid}.summary-item span{color:#536675;font-size:13px;font-weight:700}.summary-item strong{color:#172033;font-size:32px;line-height:1}.actions-band{border-radius:8px;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding:18px;display:flex}.weekly-report-band{border-radius:8px;grid-template-columns:minmax(280px,1fr) minmax(360px,.9fr) auto;align-items:end;gap:20px;margin-top:18px;padding:18px;display:grid}.weekly-report-band p{color:#566b78;margin-top:6px;line-height:1.45}.weekly-report-controls{grid-template-columns:minmax(180px,.8fr) minmax(220px,1fr);align-items:end;gap:14px;display:grid}.week-range-card{background:#fff;border:1px solid #bec9d4;border-radius:6px;gap:3px;min-height:42px;padding:8px 12px;display:grid}.week-range-card span,.week-range-card small{color:#607585;font-size:12px;font-weight:700}.week-range-card strong{color:#172033;font-size:14px;line-height:1.25}.actions-band p{color:#566b78;margin-top:6px;line-height:1.45}.download-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.error-banner{color:#842727;background:#fff1f1;border:1px solid #d59191;border-radius:8px;margin-top:18px;padding:14px 16px;font-weight:700}.error-banner.compact{margin-top:0;padding:11px 12px;font-size:14px}.data-section{border-radius:8px;margin-top:18px;overflow:hidden}.section-heading{border-bottom:1px solid #d4dce5;justify-content:space-between;align-items:center;gap:18px;padding:18px;display:flex}.section-heading span{color:#657886;font-size:14px;font-weight:700}.table-shell{overflow:auto}table{border-collapse:collapse;background:#fff;width:100%;min-width:1840px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #e2e8ee;padding:12px 14px}th{z-index:1;color:#334b5a;text-transform:uppercase;background:#edf3f7;font-size:12px;font-weight:800;position:sticky;top:0}td{color:#243545;font-size:14px;line-height:1.35}.error-text,.muted{color:#738391}.error-text{max-width:220px;margin-top:6px;font-size:12px}.empty-cell{color:#657886;text-align:center;vertical-align:middle;height:96px}.pagination-bar{color:#526776;background:#f7fafc;border-top:1px solid #d4dce5;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;font-size:14px;font-weight:700;display:flex}.pagination-actions{align-items:center;gap:12px;display:flex}.pagination-actions .secondary-button:disabled{cursor:not-allowed;opacity:.48}@media (width<=1100px){.app-shell{width:min(100vw - 32px,1420px)}.page-header,.header-actions,.actions-band,.weekly-report-band,.filter-band{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.filter-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.summary-band{grid-template-columns:repeat(2,1fr)}.download-actions{justify-content:flex-start}.weekly-report-controls{grid-template-columns:1fr}}@media (width<=640px){.app-shell{width:min(100vw - 24px,1420px);padding-top:20px}h1{font-size:27px}.filter-grid,.summary-band{grid-template-columns:1fr}.pagination-bar{flex-direction:column;align-items:stretch}.pagination-actions{justify-content:space-between}}
