:root{--navy:#0b1e31;--navy2:#102b42;--navy3:#18354b;--teal:#078d99;--teal2:#04b2ab;--mint:#b7f3e9;--blue:#3a77d1;--orange:#de9b53;--purple:#8b79d2;--surface:#f3f6f9;--white:#fff;--ink:#17283d;--muted:#718398;--muted2:#97a5b4;--line:#e3eaf0;--shadow:0 10px 35px rgba(17,39,64,.045);--radius:15px;--font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--font);font-size:14px;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:3px solid #4ecdc2;outline-offset:3px}button,input,select{min-width:0}a{color:inherit;text-decoration:none}p,h1,h2,h3,h4{margin:0}p{line-height:1.65}h1,h2,h3,h4{line-height:1.18}button{border:0;background:none;color:inherit}.skip-link{position:fixed;top:-80px;left:12px;padding:12px 18px;color:#fff;background:#075c6e;z-index:3000}.skip-link:focus{top:12px}.print-only{display:none}.app-shell{display:flex;min-height:100vh;min-width:0}.sidebar{width:264px;flex:0 0 264px;min-height:100vh;background:linear-gradient(160deg,#081929,#0e253a 62%,#102941);color:#e4eef5;display:flex;flex-direction:column;padding:28px 18px 22px;position:sticky;top:0;height:100vh;overflow-y:auto;z-index:110;box-shadow:2px 0 12px #04162909}.identity{display:flex;align-items:center;gap:12px;padding:0 8px 25px;border-bottom:1px solid #ffffff1c}.identity-emblem{font-weight:900;font-size:22px;letter-spacing:-2px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:linear-gradient(145deg,#fff,#cde9ee);color:#113049;flex:0 0 42px}.identity-dot{color:var(--teal)}.identity-name{display:block;font-size:11px;letter-spacing:1.2px;font-weight:800;white-space:nowrap}.identity-name strong{color:#73d8d2}.identity-name small{display:block;margin-top:6px;font-size:8px;letter-spacing:2.25px;color:#9eb4c4;font-weight:700}.side-section-label{font-size:10px;color:#7390a6;letter-spacing:1.8px;margin:34px 14px 14px;font-weight:800}.side-nav{display:flex;flex-direction:column;gap:5px}.side-nav button{display:flex;align-items:center;gap:13px;text-align:left;width:100%;height:45px;border-radius:9px;padding:0 14px;color:#bed0dc;font-weight:600;font-size:13px;transition:background .2s,color .2s,transform .2s}.side-nav button:hover{background:#ffffff0d;color:white}.side-nav button.active{background:linear-gradient(110deg,#164f5c,#173b54);color:#fff;box-shadow:inset 3px 0 #4be1d6;border:1px solid #ffffff13}.nav-icon{font-size:20px;color:#8cb2c4;font-weight:400;width:22px;text-align:center}.side-nav button.active .nav-icon{color:#6ce7de}.nav-arrow{margin-left:auto;font-size:21px;opacity:.2}.side-nav button.active .nav-arrow{opacity:.6}.side-bottom{margin-top:auto;padding-top:28px}.side-document{background:#ffffff0a;border:1px solid #ffffff1b;border-radius:12px;display:flex;gap:10px;padding:16px 13px;margin-bottom:12px}.status-glow{width:8px;height:8px;border-radius:50%;background:#46dbc1;box-shadow:0 0 0 4px #46dbc119;flex:0 0 auto;margin-top:4px}.side-document strong{display:block;color:#e2edf5;font-size:10px;letter-spacing:.4px;text-transform:uppercase}.side-document small{display:block;margin-top:6px;color:#88a3b7;line-height:1.5;font-size:11px}.side-bottom>a{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#a3bacb;padding:10px 9px}.side-bottom>a:hover{color:white}.workspace{min-width:0;flex:1}.topbar{height:66px;border-bottom:1px solid #dde7ee;background:rgba(255,255,255,.93);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,2.6vw,45px);gap:15px;position:sticky;top:0;z-index:70;backdrop-filter:blur(15px)}.top-left,.top-actions{display:flex;align-items:center;gap:15px;min-width:0}.top-location{color:#3a5873;letter-spacing:1.6px;font-size:10px;font-weight:850;white-space:nowrap}.top-location-dot{width:6px;height:6px;display:inline-block;border:2px solid #1196a0;border-radius:50%;margin-right:7px}.top-divider{width:1px;height:18px;background:#d9e2e9}.top-subtitle{font-size:12px;color:#94a2af;white-space:nowrap}.top-indicator{font-size:11px;color:#6c8797;display:flex;align-items:center;gap:7px;white-space:nowrap}.top-indicator>span{width:7px;height:7px;border-radius:50%;background:#25b6a7}.top-action{border:1px solid #dde8ed;border-radius:9px;padding:9px 13px;color:#40546b;font-weight:700;font-size:11px;white-space:nowrap;background:#fff}.top-action:hover{border-color:#8bc9ce;color:#075f69}.top-action.prominent{background:#eaf5f6;border-color:#d5e9eb;color:#0c6470}.menu-toggle{display:none;padding:8px;border-radius:7px;font-size:21px}.content-wrap{max-width:1680px;margin:0 auto;padding:34px clamp(18px,2.6vw,45px) 0}.intro{display:grid;grid-template-columns:1fr minmax(270px,315px);gap:32px;align-items:center;margin:0 0 29px}.eyebrow{font-size:10px;font-weight:850;letter-spacing:1.8px;color:#0a8993;display:flex;gap:8px;align-items:center}.eyebrow>span:first-child:not(.eyebrow-sep){display:block;width:7px;height:7px;border-radius:50%;background:#10b3ac}.eyebrow-sep{color:#a9bcc6}.eyebrow.compact{font-size:10px;letter-spacing:1.3px;line-height:1.4}.intro h1{font-size:clamp(34px,3.45vw,54px);font-weight:830;letter-spacing:-2.2px;margin:11px 0 13px;color:#18304a}.intro h1 em{font-style:normal;color:#07919e}.intro-copy{font-size:13px;max-width:730px;line-height:1.75;color:#718396}.coverage-card{background:linear-gradient(145deg,#10283e,#0c3645);color:#fff;border-radius:14px;box-shadow:0 16px 30px rgba(6,47,59,.11);padding:20px 22px;min-height:156px;position:relative;overflow:hidden}.coverage-card:after{content:"";position:absolute;width:160px;height:160px;right:-70px;top:-68px;border:30px solid #47d2cc10;border-radius:50%;pointer-events:none}.coverage-card>span{font-size:10px;color:#83cad0;letter-spacing:1.8px;font-weight:850}.coverage-card>strong{display:block;margin-top:12px;font-size:18px;letter-spacing:-.45px;line-height:1.35}.coverage-card p{font-size:11px;color:#aec7d4;margin-top:6px}.coverage-bottom{border-top:1px solid #ffffff1b;padding-top:12px;margin-top:15px;color:#aac5cf;font-size:10px;display:flex;align-items:center;gap:9px}.coverage-dot{height:7px;width:7px;border-radius:50%;background:#38d3b6}.filter-surface,.panel{border:1px solid #e0e8ef;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}.filter-surface{padding:21px 22px 18px;margin-bottom:30px}.filter-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:18px;border-bottom:1px solid #eef2f6}.filter-title h2{font-size:15px;margin-top:4px;letter-spacing:-.2px}.filter-top-actions{display:flex;align-items:center;gap:14px}.filter-results{background:#e8f5f5;color:#0e7881;padding:7px 10px;border-radius:100px;font-weight:800;font-size:11px;white-space:nowrap}.text-action{color:#047f8c;font-weight:750;font-size:11px;padding:7px 0}.text-action:hover{text-decoration:underline}.filter-grid{padding-top:18px;display:grid;grid-template-columns:minmax(165px,1.1fr) repeat(2,minmax(133px,.8fr)) minmax(155px,1fr) minmax(130px,.8fr) minmax(145px,1fr) minmax(170px,1.1fr);gap:12px;align-items:end}.field{display:flex;flex-direction:column;min-width:0;gap:7px}.field-label,.compare-picker label>span,.record-actions>label{font-size:10px;color:#8295a8;letter-spacing:.6px;font-weight:800}.field input,.field select,.compare-picker select,.record-actions select{width:100%;border:1px solid #dce6ee;border-radius:7px;height:37px;padding:0 10px;background:#fbfdff;color:#31475d;outline:none;font-size:11.5px;font-weight:650}.field input:focus,.field select:focus,.compare-picker select:focus{border-color:#36b3b2;box-shadow:0 0 0 3px #36b3b21c}.field input[type=date]{padding-right:6px}.field option{font-size:13px}.period-picker{display:flex;gap:4px;min-height:37px}.period-picker button{flex:1;border:1px solid #dde8ef;color:#668195;background:#fff;padding:0 5px;border-radius:7px;font-size:11px;font-weight:800}.period-picker button:hover,.period-picker button.selected{background:#e8f8f7;border-color:#9bded7;color:#087c81}.search-box{display:flex;align-items:center;gap:5px;border:1px solid #dce6ee;background:#fbfdff;border-radius:7px;padding:0 9px;height:37px}.search-box>span{font-size:20px;color:#8ba3b2}.search-box input{border:none;background:none;box-shadow:none!important;padding:0;height:100%;flex:1;min-width:0}.search-box:focus-within{border-color:#36b3b2;box-shadow:0 0 0 3px #36b3b21c}.filter-footer{margin-top:16px;padding-top:15px;border-top:1px solid #eff2f5;display:flex;align-items:end;justify-content:space-between;gap:16px}.lens-set{display:flex;flex-direction:column;gap:8px}.lens-pills{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.lens-pills button{padding:8px 12px;border:1px solid #e1e9f0;color:#637b8f;font-size:11px;font-weight:750;border-radius:30px;background:#fff}.lens-pills button.selected{background:#0d5665;color:#fff;border-color:#0d5665}.lens-pills button:hover:not(.selected){border-color:#7bcac5;color:#087a80}.advanced-toggle{font-size:11px;color:#0b8991;font-weight:800;white-space:nowrap;padding:8px 3px}.advanced-toggle span{font-size:16px;margin-left:5px}.advanced-filters{border-top:1px solid #edf2f5;padding-top:15px;margin-top:13px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.advanced-filters[hidden]{display:none!important}.notice{margin:0 0 25px;padding:14px 16px;border:1px solid #f1d6ab;background:#fff5e8;border-radius:11px;color:#7e5121;font-size:12px}.view[hidden]{display:none!important}.section-line{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:19px}.section-line h2{font-size:24px;letter-spacing:-.85px;margin-top:6px}.section-description{font-size:12px;color:#8293a2;margin-top:6px}.updated-label{font-size:11px;color:#93a4b3;text-align:right}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:14px}.kpi-card{min-width:0;background:#fff;border:1px solid #e0e8ee;border-radius:12px;padding:17px 16px 15px;min-height:117px;box-shadow:var(--shadow);position:relative;overflow:hidden}.kpi-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--bar,#12b6ad)}.kpi-card .kpi-label{font-size:10px;font-weight:750;color:#8193a6;line-height:1.3;display:block;min-height:26px}.kpi-card strong{font-weight:850;letter-spacing:-.75px;font-size:clamp(22px,2vw,32px);margin-top:3px;display:block;line-height:1.3;color:#192e47}.kpi-card small{color:#9aa8b4;font-size:10px;line-height:1.5;display:block;margin-top:3px}.integrity-ribbon{display:flex;align-items:center;gap:11px;border-radius:10px;background:#e8f5f5;border:1px solid #d9eeee;color:#547b86;padding:12px 14px;margin-bottom:15px}.integrity-symbol{font-size:19px;color:#158e9b}.integrity-ribbon p{font-size:11.5px;line-height:1.5}.integrity-ribbon strong{color:#275a69}.integrity-ribbon button{color:#047d88;font-weight:800;padding:0 4px}.integrity-ribbon button:hover{text-decoration:underline}.dashboard-grid{display:grid;gap:14px;margin:14px 0}.split-wide{grid-template-columns:minmax(0,1.65fr) minmax(310px,1fr)}.halves{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:21px 21px 17px;min-width:0;overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:19px}.panel-header h3{font-size:17px;letter-spacing:-.45px;margin-top:6px}.panel-header p{font-size:11.5px;color:#98a6b3;margin-top:5px}.panel-tag{border:1px solid #dcebed;border-radius:5px;background:#f4fafb;color:#608a94;letter-spacing:.45px;font-size:9px;font-weight:850;padding:7px 8px;white-space:nowrap}.panel-link{white-space:nowrap;color:#0b8991;font-size:11px;font-weight:750}.panel-link:hover{text-decoration:underline}.trend-chart{height:238px;position:relative}.trend-chart svg{height:100%;width:100%;display:block;overflow:visible}.grid-line{stroke:#e7edf2;stroke-width:1}.axis-label{fill:#9aabb8;font-size:10px;font-family:inherit}.trend-bar{fill:#2da5ae;cursor:pointer;transition:fill .16s,opacity .16s}.trend-bar:hover,.trend-bar:focus{fill:#087981;opacity:1}.trend-bar.selected{fill:#0b5365}.chart-tooltip{fill:#183e4e;color:#fff}.chart-footer{border-top:1px solid #edf2f5;margin-top:10px;padding-top:11px;font-size:10px;color:#a4b2bd;display:flex;justify-content:space-between;gap:15px}.chart-footer span:last-child{color:#73929b}.donut-layout{display:flex;align-items:center;gap:17px;min-height:242px}.donut-holder{width:48%;max-width:250px;min-width:125px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;position:relative}.donut-holder svg{max-width:100%;display:block}.donut-legend{flex:1;min-width:0}.donut-legend button{display:flex;gap:8px;align-items:center;width:100%;padding:8px 3px;border-radius:6px;text-align:left;font-size:10px}.donut-legend button:hover{background:#f4f7f9}.donut-legend i{width:8px;height:8px;border-radius:2px;flex:0 0 8px}.donut-legend span{color:#668197;min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut-legend b{white-space:nowrap;font-size:10px}.donut-legend small{white-space:nowrap;color:#95a8b7;font-size:9px}.panel-footnote{border-top:1px solid #eff2f5;padding-top:12px;color:#9cacb8;font-size:10px;line-height:1.55}.ranking-list{display:flex;flex-direction:column;gap:12px}.ranking-list.long{gap:12px}.ranking-button{display:block;width:100%;text-align:left;padding:1px;border-radius:5px}.ranking-button:hover .ranking-label,.ranking-button:focus-visible .ranking-label{color:#0b8991}.ranking-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.ranking-label{font-size:10.5px;color:#3b586e;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:84%}.ranking-value{font-size:10.5px;color:#243f54;font-weight:850;white-space:nowrap}.ranking-track{display:block;height:5px;border-radius:15px;background:#eaf1f4;overflow:hidden}.ranking-fill{height:100%;border-radius:15px;background:linear-gradient(90deg,#88bbc4,#1394a5);display:block;min-width:2px}.rank-empty{color:#95a6b3;font-size:12px;padding:20px 0}.insights-strip{background:linear-gradient(120deg,#112e44,#174553);border-radius:15px;margin:17px 0 0;color:#fff;padding:23px 24px 24px;position:relative;overflow:hidden}.insights-strip:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;border:35px solid #63d9d90e;right:-115px;top:-120px;pointer-events:none}.insights-strip .eyebrow{color:#72d7d5}.insights-strip h3{margin-top:5px;font-size:18px}.signals-grid{margin-top:20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.signal-item{border-left:1px solid #5da8ab5c;padding:5px 15px}.signal-item strong{font-size:17px;display:block;line-height:1.3;letter-spacing:-.35px}.signal-item span{font-size:10px;color:#8fc0cb;display:block;margin-top:4px;text-transform:uppercase;letter-spacing:.8px}.signal-item small{font-size:11px;color:#bed5dc;display:block;margin-top:7px;line-height:1.5}.comparison-panel{min-height:170px}.comparison-figures{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.comparison-figures>div{background:#f5f9fa;border:1px solid #e9f0f2;border-radius:9px;padding:17px 15px}.comparison-figures span,.comparison-figures small{display:block;color:#8194a4;font-size:10px}.comparison-figures strong{font-size:30px;display:block;margin:8px 0;color:#183951}.comparison-vs{font-size:10px;font-weight:900;color:#97a8b5}.comparison-change{margin-top:15px;padding:13px 14px;background:#eef7f6;color:#35747a;border-radius:9px;font-size:12px}.comparison-change strong{font-size:15px;color:#07727c}.comparison-hint{font-size:11px;color:#8294a4;line-height:1.6}.weekday-chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:7px;height:196px}.weekday-item{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;padding:0 2px}.weekday-item>span{font-size:10px;color:#7892a3;font-weight:750}.weekday-bar-track{width:100%;max-width:40px;height:135px;display:flex;align-items:end;background:#f3f7f9;border-radius:5px;overflow:hidden}.weekday-bar{width:100%;background:linear-gradient(180deg,#189fac,#86cad0);min-height:2px;border-radius:4px 4px 0 0}.weekday-item:hover .weekday-bar,.weekday-item.active .weekday-bar{background:#0c6174}.weekday-item small{font-size:10px;color:#9eafb9}.heatmap-wrap{overflow-x:auto;max-width:100%}.heatmap-grid{min-width:565px;display:grid;grid-template-columns:45px repeat(24,minmax(14px,1fr));gap:4px;align-items:center}.heatmap-cell{width:100%;aspect-ratio:1;min-height:14px;border-radius:4px;border:1px solid #ffffff0a;transition:transform .1s}.heatmap-cell:hover{outline:2px solid #113d53;transform:scale(1.15)}.heatmap-cell.selected{outline:2px solid #d18e38}.heatmap-grid .heatmap-label{font-size:10px;color:#8298a7;text-align:center}.heatmap-grid .heatmap-day{text-align:left;font-size:10px;color:#6b8094;font-weight:800}.heatmap-key{display:flex;align-items:center;gap:4px;color:#9babb8;font-size:9px;font-weight:750}.heatmap-key i{width:10px;height:10px;border-radius:2px;background:#eef5f6}.heatmap-key i:nth-of-type(2){background:#d0e9eb}.heatmap-key i:nth-of-type(3){background:#9ccdd1}.heatmap-key i:nth-of-type(4){background:#5eb2bb}.heatmap-key i:nth-of-type(5){background:#0d798b}.hour-chart{height:198px;display:flex;align-items:end;gap:3px;padding-bottom:25px;position:relative}.hour-item{flex:1;align-self:stretch;display:flex;align-items:end;justify-content:center;position:relative}.hour-fill{width:80%;min-height:2px;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#1aa7ad,#a7d7dd);display:block}.hour-item:hover .hour-fill,.hour-item.selected .hour-fill{background:#0c6076}.hour-item small{font-size:9px;color:#90a2af;position:absolute;bottom:-21px;left:50%;transform:translateX(-50%)}.month-chart{min-height:190px;display:flex;flex-direction:column;justify-content:center;gap:12px}.month-row{display:grid;grid-template-columns:48px 1fr 54px;gap:10px;align-items:center;font-size:11px}.month-row span{color:#72889a;font-weight:800}.month-row b{text-align:right;color:#244157;font-size:11px}.month-track{height:9px;background:#edf3f6;border-radius:20px;overflow:hidden}.month-fill{display:block;height:100%;background:linear-gradient(90deg,#84bdc9,#1796a4);border-radius:20px}.section-note-card{padding:17px 20px;border-radius:10px;background:#edf5f6;color:#57717e;font-size:11px;line-height:1.7;border:1px solid #dae9eb;margin:16px 0}.map-panel{margin:0 0 15px}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:17px}.municipality-map{border:1px solid #e7eef2;border-radius:12px;min-height:360px;background:radial-gradient(circle at 25% 30%,#e8f6f6,#f5f9fa 55%,#f1f6f8);overflow:hidden;position:relative}.municipality-map svg{width:100%;height:100%;display:block;min-height:350px}.map-circle{fill:#0b8f9c;fill-opacity:.64;stroke:#fff;stroke-width:1.7;cursor:pointer;transition:fill-opacity .15s}.map-circle:hover,.map-circle.selected{fill:#0a5570;fill-opacity:.94;stroke-width:2.5}.map-aside{background:#f6fafb;padding:17px;border-radius:10px;display:flex;flex-direction:column;gap:17px}.map-aside-item{border-bottom:1px solid #e4edef;padding-bottom:13px}.map-aside-item span{font-size:9px;font-weight:850;color:#879aaa;letter-spacing:1px}.map-aside-item strong{display:block;font-size:28px;color:#174057;letter-spacing:-1px;margin-top:5px}.map-aside-item small{font-size:10px;line-height:1.5;color:#8da2af;display:block;margin-top:4px}.map-warning{font-size:11px;color:#728b96}.map-warning b{color:#295a69}.map-warning p{margin-top:5px;font-size:11px}.secondary-button,.primary-button{min-height:37px;padding:9px 13px;font-weight:780;font-size:11px;border-radius:8px;border:1px solid #d8e6eb;background:#fff;color:#27667a;display:inline-flex;align-items:center;justify-content:center;gap:7px}.secondary-button:hover{border-color:#51b8b7;background:#f1fafa}.primary-button{background:#0b6d7e;border-color:#0b6d7e;color:white}.primary-button:hover{background:#064d61}.full{width:100%}.compare-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.compare-picker label{display:flex;flex-direction:column;gap:8px}.compare-results{margin-top:17px}.compare-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.compare-mini{background:#f5f9fa;border:1px solid #e2edef;border-radius:10px;padding:14px 13px;min-width:0}.compare-mini b{display:block;font-size:10px;color:#607d8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compare-mini strong{display:block;font-size:26px;letter-spacing:-.7px;color:#1b4056;margin:8px 0 0}.compare-mini small{font-size:9px;color:#9aabb5;line-height:1.4;display:block}.compare-mix{border-top:1px solid #e2e9ed;margin-top:11px;padding-top:10px}.compare-mix>span{font-size:9px;color:#7990a0;font-weight:800}.compare-mix-row{display:flex;justify-content:space-between;gap:7px;margin-top:8px;font-size:10px;color:#6b8090}.compare-mix-row b{color:#37576b}.empty-state{color:#9aa9b5;font-size:12px;padding:10px 0}.planning-hero{background:linear-gradient(105deg,#112f44,#0e5162);color:white;border-radius:14px;padding:28px 29px;position:relative;overflow:hidden;min-height:164px;display:flex;align-items:center;justify-content:space-between}.planning-hero .eyebrow{color:#8fe1de}.planning-hero h3{font-size:25px;letter-spacing:-1px;margin-top:8px}.planning-hero p{font-size:12px;color:#bad1db;max-width:660px;margin-top:9px}.planning-ornament{font-size:140px;line-height:1;color:#ffffff17;position:absolute;right:45px;top:-12px}.pathways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:16px 0}.pathway-card{background:white;border:1px solid #dfe8ee;border-radius:14px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;padding:21px;min-height:236px;box-shadow:var(--shadow);transition:transform .16s,box-shadow .16s,border-color .16s}.pathway-card:hover{transform:translateY(-3px);border-color:#80bdc0;box-shadow:0 15px 30px #123a5811}.pathway-symbol{height:36px;width:36px;display:flex;align-items:center;justify-content:center;font-size:21px;border-radius:8px;background:#edf7ff;color:#3e89cc}.pathway-symbol.utility{background:#e7f8f3;color:#0c988f}.pathway-symbol.fire{background:#fff4e8;color:#c8893f}.pathway-meta{font-size:9px;color:#89a1af;font-weight:850;letter-spacing:1px;margin:18px 0 6px}.pathway-card strong{font-size:16px;color:#24435a;letter-spacing:-.25px}.pathway-card p{font-size:11px;color:#8398a7;margin-top:8px}.pathway-action{margin-top:auto;padding-top:20px;font-size:11px;color:#0b8993;font-weight:800;display:flex;justify-content:space-between;width:100%}.deliverables{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 25px;margin-top:14px}.deliverables h3{font-size:19px;margin-top:6px}.deliverables p{color:#8ca0af;font-size:11.5px;margin-top:6px;max-width:650px}.deliverable-buttons{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;flex:0 0 auto}.records-panel{padding:0;overflow:hidden}.records-header{display:flex;justify-content:space-between;align-items:center;padding:21px 23px;gap:12px}.records-header h3{margin-top:6px;font-size:18px}.records-header p{font-size:11px;color:#91a2b0;margin-top:5px}.record-actions{display:flex;align-items:center;gap:11px}.record-actions label{display:flex;align-items:center;gap:7px}.record-actions select{height:34px;width:76px}.table-wrap{overflow:auto;max-width:100%}.data-table{width:100%;border-collapse:collapse;min-width:820px}.data-table th{background:#f5f9fa;color:#7f95a5;text-align:left;font-size:9px;letter-spacing:.9px;padding:13px 17px;border-top:1px solid #e8eff3;border-bottom:1px solid #e8eff3;white-space:nowrap}.data-table td{padding:15px 17px;border-bottom:1px solid #edf2f5;color:#587083;font-size:11px;vertical-align:top;line-height:1.6}.data-table tr:hover td{background:#fbfdfd}.data-table td:first-child{white-space:nowrap;font-weight:700;color:#385369}.data-table td strong{display:block;color:#204053;font-size:11px;max-width:250px}.data-table td small{font-size:10px;color:#a1aebb;display:block;margin-top:3px}.record-detail-button{border:1px solid #d9e8ea;border-radius:7px;color:#087988;padding:7px 11px;font-weight:750;background:#f4fbfb;font-size:10px;white-space:nowrap}.record-detail-button:hover{background:#daf2f0}.detail-pill{padding:5px 7px;background:#eef7f7;color:#29828a;border-radius:5px;font-size:9px;white-space:nowrap;font-weight:800}.detail-pill.warn{background:#fff3df;color:#b27a27}.records-bottom{padding:16px 22px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#91a3b2;font-size:11px}.pager{display:flex;align-items:center;gap:10px}.pager button{border:1px solid #e0eaee;padding:8px 11px;border-radius:7px;color:#365b70;font-size:11px;font-weight:750}.pager button:hover:not(:disabled){background:#eff7f7}.pager strong{white-space:nowrap;font-size:11px;color:#5e758a}.table-disclaimer{font-size:11px;color:#899baa;margin:14px 5px}.quality-banner{display:flex;gap:16px;padding:23px;background:linear-gradient(100deg,#e8f6f5,#f2f9fb);border:1px solid #cfe9e8;border-radius:13px}.quality-banner>span{color:#07969e;font-size:30px}.quality-banner h3{font-size:17px;color:#225264}.quality-banner p{font-size:12px;color:#5f8790;margin-top:7px}.quality-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:15px 0}.quality-card{background:#fff;border:1px solid #e1e9ed;border-radius:11px;padding:17px 16px}.quality-card span{display:block;color:#849bac;font-size:10px;font-weight:750;line-height:1.4;min-height:26px}.quality-card strong{display:block;color:#1e425a;letter-spacing:-.5px;font-size:26px;margin-top:8px}.quality-card p{font-size:10px;color:#9caab7;margin-top:4px}.quality-detail{min-height:185px}.quality-row{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #e9eff2;padding:10px 0;font-size:11px;color:#6b8798}.quality-row strong{color:#28485e}.quality-detail p{color:#829aa7;font-size:11px;margin-top:16px}.quality-detail b{color:#365b6d}.methodology-panel{padding:27px}.methodology-panel h3{font-size:21px;margin:6px 0 23px}.method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 28px}.method-grid>div{border-top:1px solid #e7eff2;padding-top:13px}.method-grid span{color:#1ca9ae;font-size:11px;font-weight:850}.method-grid h4{font-size:13px;color:#28465b;margin:8px 0}.method-grid p{color:#8297a5;font-size:11px}.source-links{display:flex;flex-wrap:wrap;gap:13px;margin-top:22px}.source-links a{font-size:11px;font-weight:800;color:#087f8b}.source-links a:hover{text-decoration:underline}.footer{display:flex;align-items:center;justify-content:space-between;gap:18px;color:#a2b2c0;font-size:10px;border-top:1px solid #e0e8ee;padding:24px 0 27px;margin-top:37px}.footer-brand{font-weight:900;letter-spacing:1px;font-size:9px;color:#7b94a5}.footer-brand b{color:#10a5a8;margin:0 4px}.modal-backdrop{position:fixed;inset:0;background:#071f32bd;display:flex;justify-content:center;align-items:center;padding:20px;z-index:600;backdrop-filter:blur(3px)}.modal-backdrop[hidden],.mobile-backdrop[hidden],.toast[hidden]{display:none!important}.record-modal{background:#fff;border-radius:18px;max-width:620px;width:100%;max-height:min(90vh,760px);overflow-y:auto;padding:26px 27px 20px;box-shadow:0 22px 90px #02142170}.modal-top{display:flex;align-items:center;justify-content:space-between}.modal-top button{height:34px;width:34px;border-radius:8px;background:#f0f5f7;color:#476878}.record-modal h2{font-size:24px;margin-top:13px;letter-spacing:-.5px}.record-modal>p{color:#7e93a4;font-size:12px;margin-top:7px}.modal-details{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:21px}.modal-details div{background:#f4f8f9;border:1px solid #e7eef1;border-radius:9px;padding:13px;min-width:0}.modal-details span{font-size:9px;font-weight:850;letter-spacing:.7px;color:#88a0ac;display:block}.modal-details strong{font-size:12px;color:#2d5063;margin-top:6px;display:block;overflow-wrap:anywhere}.modal-bottom{border-top:1px solid #e6edf1;margin-top:20px;padding-top:17px;display:flex;justify-content:space-between;gap:14px;align-items:center}.modal-bottom p{color:#9eacb6;font-size:10px}.modal-bottom a{color:#087f8b;font-size:11px;font-weight:800;white-space:nowrap}.toast{position:fixed;right:24px;bottom:25px;background:#102f43;color:white;padding:14px 18px;border-radius:10px;font-size:12px;z-index:800;box-shadow:0 10px 30px #152d4550}.mobile-backdrop{position:fixed;inset:0;background:#0718279e;z-index:90}
@media(max-width:1500px){.filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.filter-grid .search-field{grid-column:span 2}.kpi-card{padding:15px 12px}.kpi-card strong{font-size:26px}.panel{padding:19px}.intro h1{font-size:42px}}
@media(max-width:1200px){.sidebar{width:235px;flex-basis:235px}.identity-name{font-size:10px}.top-subtitle{display:none}.top-divider{display:none}.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.split-wide{grid-template-columns:1fr}.donut-layout{justify-content:center}.donut-holder{max-width:200px}.donut-legend{max-width:310px}.intro{grid-template-columns:1fr 270px}.intro h1{font-size:37px}}
@media(max-width:980px){.sidebar{transform:translateX(-105%);position:fixed;top:0;left:0;bottom:0;transition:transform .2s;z-index:130;width:276px;max-width:87vw;height:100dvh}.sidebar.open{transform:translateX(0)}.menu-toggle{display:block}.topbar{height:61px}.top-indicator{display:none}.content-wrap{padding:26px 22px 0}.intro{grid-template-columns:1fr 285px}.intro h1{font-size:38px}.map-layout{grid-template-columns:1fr 210px}.deliverables{align-items:flex-start;flex-direction:column}.deliverable-buttons{justify-content:flex-start}.quality-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:750px){.top-location{font-size:9px;letter-spacing:1px}.top-actions{gap:6px}.top-action{padding:8px 9px;font-size:10px}.top-action.prominent span{display:none}.intro{grid-template-columns:1fr;gap:19px;margin-bottom:20px}.intro h1{font-size:36px;letter-spacing:-1.5px}.coverage-card{max-width:none;min-height:auto;padding:17px 20px}.coverage-bottom{margin-top:9px}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-grid .search-field{grid-column:span 2}.filter-surface{padding:17px}.field.stretch{grid-column:span 2}.filter-top-actions{gap:6px}.filter-title{align-items:flex-start}.filter-results{font-size:10px}.filter-footer{align-items:flex-start;flex-direction:column;gap:7px}.advanced-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid.halves{grid-template-columns:1fr}.section-line{align-items:flex-start;flex-direction:column;gap:4px}.section-line h2{font-size:23px}.updated-label{text-align:left}.panel{padding:17px}.signals-grid{grid-template-columns:1fr}.signal-item{border-left:2px solid #59aeb3}.map-layout{grid-template-columns:1fr}.municipality-map{min-height:285px}.municipality-map svg{min-height:270px}.map-aside{display:grid;grid-template-columns:1fr 1fr;gap:12px}.map-warning{grid-column:span 2}.map-aside button{grid-column:span 2}.pathways{grid-template-columns:1fr}.pathway-card{min-height:0}.method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer{flex-wrap:wrap;font-size:9px}.records-bottom{flex-direction:column;align-items:flex-start}.quality-banner{padding:17px}}
@media(max-width:490px){.topbar{padding:0 13px}.top-location{font-size:8px;max-width:160px;overflow:hidden;text-overflow:ellipsis}.top-action{padding:8px;font-size:10px}.top-action:not(.prominent){font-size:0}.top-action:not(.prominent) span{font-size:15px}.content-wrap{padding:22px 13px 0}.intro h1{font-size:32px}.intro-copy{font-size:12px}.intro .eyebrow{font-size:9px}.coverage-card{border-radius:11px}.filter-surface{padding:15px 13px;margin-bottom:24px}.filter-title{flex-wrap:wrap}.filter-top-actions{width:100%;justify-content:space-between}.filter-grid{column-gap:8px;row-gap:11px}.field input,.field select{font-size:11px}.period-picker button{font-size:10px}.lens-pills button{padding:7px 9px;font-size:10px}.kpi-grid{gap:9px}.kpi-card{min-height:105px;padding:13px 12px}.kpi-card strong{font-size:25px}.kpi-card .kpi-label{font-size:9px}.kpi-card small{font-size:9px}.panel-header h3{font-size:16px}.chart-footer{flex-direction:column;gap:2px}.donut-layout{flex-direction:column;gap:7px}.donut-holder{min-width:160px;width:160px}.donut-legend{width:100%}.donut-legend button{padding:6px}.map-aside{grid-template-columns:1fr}.map-warning,.map-aside button{grid-column:1}.compare-two{grid-template-columns:1fr}.compare-picker{grid-template-columns:1fr}.method-grid{grid-template-columns:1fr}.quality-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quality-card{padding:13px 11px}.quality-card strong{font-size:22px}.modal-details{grid-template-columns:1fr 1fr}.modal-bottom{align-items:flex-start;flex-direction:column}.record-modal{padding:19px 16px}.records-header{padding:16px;flex-direction:column;align-items:flex-start}.record-actions{width:100%;justify-content:space-between}.filter-results{white-space:normal}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{@page{size:A4;margin:15mm}body{background:#fff;color:#111;font-size:10pt}.sidebar,.topbar,.intro,.filter-surface,.footer,.integrity-ribbon,.mobile-backdrop,.modal-backdrop,.toast,.notice,.updated-label,.panel-link,.pathways,.planning-hero,.deliverable-buttons,.chart-footer,.source-links,.record-actions,.records-bottom{display:none!important}.workspace{width:100%!important}.content-wrap{padding:0;max-width:none}.print-only{display:block}.print-header{border-bottom:2px solid #0e7180;padding-bottom:12px;margin-bottom:18px}.print-header h1{font-size:22pt}.print-header p{font-size:9pt;color:#555}.view{display:none!important}.view[data-panel=overview]{display:block!important}.section-line h2{font-size:16pt}.kpi-grid{grid-template-columns:repeat(3,1fr);gap:8px}.kpi-card,.panel{box-shadow:none!important;border:1px solid #d4dce2;break-inside:avoid}.kpi-card strong{font-size:20pt}.dashboard-grid{break-inside:avoid}.split-wide{grid-template-columns:1.3fr 1fr}.halves{grid-template-columns:1fr 1fr}.panel{padding:10px}.panel-header h3{font-size:12pt}.panel-header p{font-size:8pt}.ranking-list{gap:7px}.trend-chart{height:140px}.donut-layout{min-height:150px}.donut-holder{max-width:140px}.donut-legend button{padding:5px 0}.insights-strip{color:#11293b;background:#eef7f7;padding:12px;border:1px solid #dae6e7;break-inside:avoid}.insights-strip .eyebrow{color:#166f78}.insights-strip h3,.signal-item strong{color:#183649}.signal-item span,.signal-item small{color:#50616c}.signals-grid{grid-template-columns:repeat(3,1fr)}a:after{content:none!important}}
