:root{--main:#4834a4;--ink:#22253b;--soft:#f5f6fa}body{background:#f7f8fc;color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh}.navbar{min-height:72px}.brand-icon{color:var(--main)}.brand-accent{color:var(--main)}.panel{background:white;border:1px solid #e9eaf0;border-radius:16px;box-shadow:0 6px 28px #22254408}.stat{padding:26px}.stat-number{font-size:2rem;font-weight:650;letter-spacing:-.04em;margin-top:6px}.eyebrow{font-size:11px;letter-spacing:.15em;color:#6251b8;font-weight:750}.btn-primary{background:var(--main);border-color:var(--main)}.btn-primary:hover{background:#372582;border-color:#372582}.btn-outline-primary{color:var(--main);border-color:#d3cbed}.btn-outline-primary:hover{background:var(--main);border-color:var(--main)}.pill{display:inline-block;border-radius:20px;background:#f0edfc;padding:5px 12px;font-size:12px;color:#503da2}.table td,.table th{padding:16px 10px}.table th{font-size:12px;color:#737587;font-weight:650}.form-control,.form-select{border-radius:9px;padding:10px 12px;border-color:#e1e2ea}.summary-text,.extracted{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.extracted{max-height:550px;overflow:auto;color:#555a6c;font-size:13px}dt{margin-top:14px;color:#777}dd{font-weight:500}
/* ArchiveAI CTD — clean municipal admin design; palette can be replaced by the future brand guide */
:root{--ctd-primary:#1766b1;--ctd-bg:#f5f7fb;--ctd-text:#263449;--ctd-border:#e5eaf2}
body{background:var(--ctd-bg);color:var(--ctd-text);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.app-shell{display:flex;min-height:100vh}.sidebar{width:255px;min-width:255px;background:white;border-right:1px solid var(--ctd-border);display:flex;flex-direction:column;padding:24px 12px}.brand{display:flex;align-items:center;gap:12px;font-weight:750;color:#172b47;text-decoration:none;font-size:20px;margin:6px 12px 30px}.brand small{display:block;color:#8590a2;font-weight:400;font-size:11px}.brand-symbol{background:#1766b1;color:white;padding:9px;border-radius:10px}.nav-caption{color:#94a0b1;letter-spacing:.08em;font-size:10px;font-weight:700;margin:20px 14px 10px}.sidebar-link{display:block;padding:12px 14px;color:#55657b;text-decoration:none;border-radius:9px;margin:2px 0;font-size:14px}.sidebar-link:hover{background:#ecf4fe;color:#125eae}.sidebar-footer{margin:auto 12px 0;font-size:11px;color:#99a1ae}.main-area{flex:1;min-width:0}.topbar{min-height:75px;background:#fff;border-bottom:1px solid var(--ctd-border);padding:18px 35px;display:flex;align-items:center;justify-content:space-between;color:#66758a;font-size:13px}.content-area{padding:35px;max-width:1550px;margin:0 auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px}.page-heading h1{font-weight:700;letter-spacing:-.025em;font-size:28px;margin:0 0 8px}.page-heading p{color:#8590a2;margin:0}.panel,.metric{background:#fff;border:1px solid var(--ctd-border);border-radius:13px;padding:24px;box-shadow:0 3px 13px rgba(18,34,59,.025)}.panel h4{font-size:17px;font-weight:650;margin-bottom:20px}.metric span{color:#8a96a8;display:block;font-size:13px}.metric strong{display:block;font-size:32px;letter-spacing:-.04em;margin-top:12px}.tabs{display:flex;gap:18px;border-bottom:1px solid #dce3ee;margin-bottom:20px}.tabs a{padding:13px 17px;text-decoration:none;color:#7a899a}.tabs a.selected{border-bottom:3px solid #1766b1;color:#1766b1;font-weight:650}.table th{text-transform:uppercase;font-size:11px;letter-spacing:.06em;color:#8a97a8;border-bottom-color:#e5eaf2}.table td{font-size:13px;padding:16px 9px}.status-chip{background:#eef5fb;color:#3973a6;padding:6px 12px;border-radius:30px;font-size:12px}.timeline-item{border-left:3px solid #cfe2f9;margin:0 0 12px 7px;padding:3px 0 18px 18px}.btn-primary{background:#1766b1;border-color:#1766b1}
@media(max-width:900px){.app-shell{display:block}.sidebar{width:100%;min-width:0;flex-direction:row;flex-wrap:wrap;gap:3px;padding:10px}.brand{width:100%;margin:5px}.nav-caption,.sidebar-footer{display:none}.sidebar-link{font-size:12px;padding:8px}.topbar{padding:15px}.content-area{padding:18px}}
@media print{.noprint,.sidebar,.topbar{display:none!important}.content-area{padding:0}.panel{box-shadow:none;border:0}.print-sheet{display:block;width:100%;max-width:none}.app-shell{display:block}}
