@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-cyrillic-ext-700-normal-BDQ-w_bc.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-700-normal-CtgKGIh5.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-cyrillic-700-normal-Bp80XfeI.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-700-normal-O_YjL27c.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-vietnamese-700-normal-apsD3J7v.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-700-normal-Bs14ezHR.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-latin-ext-700-normal-Dhimjc7-.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-700-normal-Cwsjk1Jb.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-latin-700-normal-7sUh57Bg.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-700-normal-CNHXzs6v.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-sans-cyrillic-ext-wght-normal-DSNfmdVt.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-sans-cyrillic-wght-normal-B2hlT84T.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-sans-devanagari-wght-normal-Cv-Vwajv.woff2) format("woff2-variations");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-sans-greek-ext-wght-normal-12T8GTDR.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-sans-greek-wght-normal-Ymb6dZNd.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-sans-vietnamese-wght-normal-DLTJy58D.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-sans-latin-ext-wght-normal-W1qJv59z.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-sans-latin-wght-normal-BYSzYMf3.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Devanagari;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-devanagari-devanagari-400-normal-BlDd6KY1.woff2) format("woff2"),url(/assets/noto-sans-devanagari-devanagari-400-normal-CdOJmQ4E.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Noto Sans Devanagari;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-devanagari-latin-ext-400-normal-BnQrAETZ.woff2) format("woff2"),url(/assets/noto-sans-devanagari-latin-ext-400-normal-Bs32KOJx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Devanagari;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-devanagari-latin-400-normal-BuiDGFlU.woff2) format("woff2"),url(/assets/noto-sans-devanagari-latin-400-normal-Bl6wi1XD.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Devanagari;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-devanagari-devanagari-600-normal-BeyktMLo.woff2) format("woff2"),url(/assets/noto-sans-devanagari-devanagari-600-normal-B5tDaqnD.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Noto Sans Devanagari;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-devanagari-latin-ext-600-normal-eCXJLagf.woff2) format("woff2"),url(/assets/noto-sans-devanagari-latin-ext-600-normal-BYBXZV8b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Devanagari;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-devanagari-latin-600-normal-Bzmbz5CH.woff2) format("woff2"),url(/assets/noto-sans-devanagari-latin-600-normal-D_YUQxD_.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Telugu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-telugu-telugu-400-normal-7lz0FJyD.woff2) format("woff2"),url(/assets/noto-sans-telugu-telugu-400-normal-B-SOWLxC.woff) format("woff");unicode-range:U+0951-0952,U+0964-0965,U+0C00-0C7F,U+1CDA,U+1CF2,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Telugu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-telugu-latin-ext-400-normal-DzVve7Fv.woff2) format("woff2"),url(/assets/noto-sans-telugu-latin-ext-400-normal-DI1IggVY.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Telugu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-telugu-latin-400-normal-D5HVD0Em.woff2) format("woff2"),url(/assets/noto-sans-telugu-latin-400-normal-BY_3pSVs.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Telugu;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-telugu-telugu-600-normal-ShqxMSqt.woff2) format("woff2"),url(/assets/noto-sans-telugu-telugu-600-normal-SAyHZyNi.woff) format("woff");unicode-range:U+0951-0952,U+0964-0965,U+0C00-0C7F,U+1CDA,U+1CF2,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Telugu;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-telugu-latin-ext-600-normal-BGgD5Np2.woff2) format("woff2"),url(/assets/noto-sans-telugu-latin-ext-600-normal-F_Gcdd0Y.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Telugu;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/noto-sans-telugu-latin-600-normal-wff5QEQD.woff2) format("woff2"),url(/assets/noto-sans-telugu-latin-600-normal-Ds0K-67z.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:Noto Sans Variable,Noto Sans,Noto Sans Telugu,Noto Sans Devanagari,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-optical-sizing:auto;color:#172d2b;background:#f4f3ed;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--font-display: "Noto Sans Variable", "Noto Sans", "Noto Sans Telugu", "Noto Sans Devanagari", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--font-ui: "Noto Sans Variable", "Noto Sans", "Noto Sans Telugu", "Noto Sans Devanagari", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--font-devanagari: "Noto Sans Devanagari", "Noto Sans Variable", sans-serif;--font-telugu: "Noto Sans Telugu", "Noto Sans Variable", sans-serif;--font-mono: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;--ink: #172d2b;--ink-soft: #334c47;--muted: #5f746c;--muted-light: #7e9189;--line: #ced9d3;--line-strong: #aebfb6;--paper: #f4f3ed;--paper-deep: #eaede7;--card: #fbfaf5;--card-strong: #fffef9;--navy: #0e2a47;--navy-raised: #153b5d;--teal: #087e78;--teal-deep: #05635f;--teal-soft: #ddf0ea;--orange: #bd5b3e;--orange-soft: #f6e5de;--gold: #af7417;--gold-soft: #f6ead0;--green: #147c61;--blue: #2d6f94;--blue-soft: #dfeaf1;--aqua: #397d8a;--danger: #a53f2a;--goi-saffron: #ff9933;--goi-green: #138808;--goi-navy: #17375e;--goi-portal-blue: #003580;--shadow-sm: 0 2px 10px rgba(26, 52, 46, .07);--shadow-md: 0 8px 24px rgba(14, 42, 71, .1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--dur-fast: .12s;--dur-base: .19s;color-scheme:light;accent-color:var(--teal)}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#aebdb6 transparent}*::selection{color:var(--navy);background:#bfe8dc}html{width:100%;background:var(--paper);-webkit-text-size-adjust:100%}body{width:100%;margin:0;min-height:100vh;min-height:100dvh;color:var(--ink);background:var(--paper);font:400 calc(15px * var(--type-scale, 1))/1.55 var(--font-ui)}:root body .maplibregl-map{font-family:var(--font-ui)}[id],.spatial-map-panel,.network-map-panel,.urban-form-map-panel{scroll-margin-top:84px}button,input,select{font:inherit}button,summary{cursor:pointer;-webkit-tap-highlight-color:transparent}:where(a,button,summary,label,select,[role=tab],[role=radio],.nav-item){touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.55}input,textarea{caret-color:var(--teal)}button,label,summary,.nav-item,th{-webkit-user-select:none;user-select:none}td,.source-file-list,.map-selected-feature{-webkit-user-select:text;user-select:text}a{color:inherit;text-decoration-color:#5f746c8c;text-decoration-thickness:1px;text-underline-offset:.18em}h1,h2,h3{font-family:var(--font-display);font-weight:560;font-optical-sizing:auto;font-kerning:normal;text-wrap:balance}p{text-wrap:pretty}td,.kpi-card strong,.map-facts dd,.landing-fact-list strong,time{font-variant-numeric:tabular-nums}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:#aebdb6;background-clip:content-box}:where(a,button,input,select,summary,[tabindex]):focus-visible{outline:2px solid #178b82;outline-offset:2px}.skip-link{position:fixed;z-index:100;top:10px;left:10px;min-height:44px;transform:translateY(-160%);padding:10px 13px;color:#fffdf7;border-radius:8px;background:var(--navy);box-shadow:var(--shadow-md);font-size:calc(12px * var(--type-scale, 1));font-weight:700;text-decoration:none;transition:transform var(--dur-fast) var(--ease-out)}.skip-link:focus{transform:translateY(0)}.accessibility-bar{border-bottom:1px solid var(--line);background:#f2f5f6}.accessibility-bar-dark{color:#cfe0dc;border-bottom-color:#ffffff24;background:#10293f}.accessibility-bar-inner{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 18px;width:min(1280px,calc(100% - 48px));margin:0 auto;min-height:34px;padding:4px 0;font-size:calc(12px * var(--type-scale, 1))}.accessibility-skip{margin-right:auto;color:var(--teal-deep);font-weight:600;text-decoration:underline}.accessibility-bar-dark .accessibility-skip{color:#8fd6c6}.accessibility-type-control{display:flex;align-items:center;gap:6px}.accessibility-type-control>span{color:var(--muted);font-weight:600}.accessibility-bar-dark .accessibility-type-control>span{color:#9fbab1}.accessibility-type-control button{display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:26px;padding:2px 7px;color:var(--ink-soft);border:1px solid var(--line-strong);border-radius:5px;background:#fff;font-weight:700;line-height:1;transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.accessibility-type-control button:hover{color:var(--navy);border-color:var(--teal);background:var(--teal-soft)}.accessibility-type-control button.selected{color:#fff;border-color:var(--navy);background:var(--navy)}.accessibility-bar-dark .accessibility-type-control button{color:#dbe9e4;border-color:#ffffff3d;background:#ffffff0f}.accessibility-bar-dark .accessibility-type-control button.selected{color:#10293f;border-color:#8fd6c6;background:#8fd6c6}.accessibility-standard{color:var(--muted-light);font-weight:600;letter-spacing:.04em}.accessibility-bar-dark .accessibility-standard{color:#7f9d95}.site-footer-gov{border-top:3px solid var(--goi-saffron);background:#0b2033}.site-footer-grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:32px;padding:40px 0 32px}.site-footer-brand p{max-width:34ch;margin:14px 0 0;color:#9fbab1;font-size:calc(13px * var(--type-scale, 1));line-height:1.55}.site-footer-gov h2{margin:0 0 12px;color:#fffdf7;font-family:var(--font-display);font-size:calc(14px * var(--type-scale, 1));font-weight:700;letter-spacing:.02em}.site-footer-gov ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.site-footer-gov a{color:#b9d2ca;font-size:calc(13px * var(--type-scale, 1));line-height:1.4;text-decoration-color:#b9d2ca66}.site-footer-gov a:hover{color:#fffdf7;text-decoration-color:currentColor}.site-footer-standards p{margin:0;color:#9fbab1;font-size:calc(13px * var(--type-scale, 1));line-height:1.55}.site-footer-base{border-top:1px solid rgba(255,255,255,.12);background:#081726}.site-footer-base .page-container{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 24px;padding:16px 0;color:#86a49b;font-size:calc(12px * var(--type-scale, 1))}.page-container{width:min(1160px,calc(100% - 48px));margin:0 auto}.eyebrow{margin:0 0 10px;color:#49786b;font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.12em;line-height:1.2;text-transform:uppercase}.brand-mark{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.brand-mark-light{color:#f7f7f1}.brand-seal-image{display:block;width:40px;height:40px;flex:0 0 40px;padding:3px;border:1px solid rgba(255,253,248,.7);border-radius:50%;background:#fffdf8;object-fit:contain;box-shadow:0 2px 8px #03141e2e}.brand-municipal-image{display:block;width:28px;height:40px;flex:0 0 28px;object-fit:contain}.brand-mark strong,.brand-mark small{display:block}.brand-mark strong{font-family:var(--font-display);font-size:calc(17px * var(--type-scale, 1));font-weight:560;letter-spacing:-.025em;line-height:1}.brand-mark small{margin-top:4px;color:var(--muted-light);font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.08em;line-height:1;text-transform:uppercase}.brand-mark-light small{color:#9dbcb3}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:9px 15px 8px;border:1px solid transparent;border-radius:7px;font-size:calc(13px * var(--type-scale, 1));font-weight:600;line-height:1;text-decoration:none;transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.button:active{transform:translateY(.5px)}.button-primary{color:#f8fbf8;background:var(--teal);box-shadow:var(--shadow-sm)}.button-secondary{color:var(--navy);background:var(--card-strong);border-color:var(--line-strong);box-shadow:none}.button-ghost{color:#dbece5;border-color:#d6eee55c;background:transparent}.button-full{width:100%}.text-link,.text-button{display:inline-flex;align-items:center;gap:6px;color:var(--teal);font-size:calc(13px * var(--type-scale, 1));font-weight:600;text-decoration-color:#087e7859}.text-button{padding:0;border:0;background:transparent}.icon-button{display:inline-grid;width:44px;height:44px;place-items:center;color:#536c64;border:1px solid var(--line);border-radius:7px;background:var(--card)}.landing-page{min-height:100vh;min-height:100dvh;color:#eef7f3;background:var(--navy);box-shadow:inset 0 4px 0 var(--teal)}.site-header{display:flex;align-items:center;justify-content:space-between;height:84px}.header-actions{display:flex;align-items:center;gap:22px}.header-status{display:inline-flex;align-items:center;gap:8px;color:#a9c7bc;font-size:calc(12px * var(--type-scale, 1));font-weight:500;letter-spacing:.02em}.header-link{display:inline-flex;align-items:center;gap:9px;min-height:44px;color:#e0eee8;font-size:calc(13px * var(--type-scale, 1));font-weight:600;text-decoration-color:#e0eee859;white-space:nowrap}.hero{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(390px,.96fr);align-items:center;gap:clamp(48px,7vw,92px);min-height:590px;padding-top:70px;padding-bottom:86px}.hero-copy{max-width:610px}.hero h1{max-width:680px;margin:0;color:#f8f5ea;font-size:calc(clamp(50px,6.3vw,82px) * var(--type-scale, 1));font-weight:470;letter-spacing:-.055em;line-height:.92}.hero-lede{max-width:500px;margin:28px 0 0;color:#b8c9c2;font-size:calc(17px * var(--type-scale, 1));line-height:1.65}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:34px}.hero-actions .text-link{min-height:44px;color:#a9c4b8}.source-map-preview{position:relative;min-height:404px;overflow:hidden;border:1px solid #2c5963;border-radius:10px;background:#153b49;box-shadow:0 8px 24px #03141e3d}.source-map-preview svg{position:absolute;inset:0;width:100%;height:100%}.source-map-surface{fill:#153b49}.source-map-water{fill:#3198c1;fill-opacity:.42;stroke:#86d0d5;stroke-width:.24;vector-effect:non-scaling-stroke}.source-map-ward{fill:#55b9a1;fill-opacity:.1;stroke:#78d5bf;stroke-width:.18;vector-effect:non-scaling-stroke}.source-map-road{fill:none;stroke:#cc7c5d;stroke-opacity:.58;stroke-width:.13;vector-effect:non-scaling-stroke}.source-map-boundary{fill:none;stroke:#e1bd70;stroke-width:.5;vector-effect:non-scaling-stroke}.source-map-asset{fill:#f0b15e;stroke:#fff2d1;stroke-width:.25;vector-effect:non-scaling-stroke}.source-map-meta,.source-map-legend,.source-map-counts{position:absolute;display:grid;gap:4px}.source-map-meta{top:17px;left:18px}.source-map-meta span,.source-map-counts span{color:#a8c3b9;font-size:calc(11px * var(--type-scale, 1));font-weight:600;letter-spacing:.08em;text-transform:uppercase}.source-map-meta strong,.source-map-counts strong{color:#edf8f2;font-size:calc(14px * var(--type-scale, 1));font-weight:600}.source-map-legend{right:205px;bottom:18px;left:18px;display:flex;flex-wrap:wrap;gap:11px;color:#c4d9d0;font-size:calc(11px * var(--type-scale, 1));font-weight:600}.source-map-legend span{display:inline-flex;align-items:center;gap:5px}.map-key{width:8px;height:8px;display:inline-block;border-radius:50%}.map-key.ward{border:1px solid #78d5bf;background:#55b9a13d}.map-key.road{width:10px;height:2px;border-radius:2px;background:#cc7c5d}.map-key.water{border-radius:2px;background:#55b8cb}.map-key.asset{background:#f0b15e}.source-map-counts{right:18px;bottom:18px;width:165px;text-align:right}.source-map-counts span{line-height:1.35}.hero-map-state{display:grid;min-height:404px;align-content:center;justify-items:center;gap:8px;padding:28px;color:#d9eee5;border:1px solid #2c5963;border-radius:10px;background:#153b49;text-align:center}.hero-map-state span{display:inline-flex;align-items:center;gap:8px;color:#a8c3b9;font-size:calc(13px * var(--type-scale, 1))}.hero-map-state i{width:7px;height:7px;border-radius:50%;background:#79d4a9;box-shadow:0 0 0 4px #79d4a91f}.hero-map-state.error strong{color:#f1d6c4;font-size:calc(15px * var(--type-scale, 1))}.hero-map-state.error span{max-width:28ch;line-height:1.5}.landing-ledger-band{color:var(--ink);border-top:1px solid #c6d2cc;border-bottom:1px solid #c6d2cc;background:var(--paper)}.evidence-ledger{display:grid;grid-template-columns:minmax(240px,.78fr) minmax(0,1.22fr);gap:clamp(42px,7vw,100px);padding-top:72px;padding-bottom:78px}.ledger-intro .eyebrow{color:var(--orange)}.ledger-intro h2{max-width:440px;margin:0;color:var(--navy);font-size:calc(clamp(34px,4vw,48px) * var(--type-scale, 1));font-weight:480;letter-spacing:-.035em;line-height:1.02}.ledger-rows{border-top:1px solid var(--line-strong)}.ledger-row{display:grid;grid-template-columns:34px minmax(0,1fr) minmax(150px,auto);align-items:start;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}.ledger-index{color:var(--blue);font-size:calc(12px * var(--type-scale, 1));font-weight:600;font-variant-numeric:tabular-nums}.ledger-row:nth-child(2) .ledger-index{color:var(--teal)}.ledger-row:nth-child(3) .ledger-index{color:var(--gold)}.ledger-row h3{margin:0;color:var(--navy);font:600 calc(14px * var(--type-scale, 1))/1.25 var(--font-ui)}.ledger-row p{max-width:54ch;margin:7px 0 0;color:var(--muted);font-size:calc(13px * var(--type-scale, 1));line-height:1.55}.ledger-row>strong{justify-self:end;color:var(--teal-deep);font-size:calc(13px * var(--type-scale, 1));font-weight:600;text-align:right;font-variant-numeric:tabular-nums}.ledger-row:nth-child(3)>strong{color:#855817}.landing-boundary-band{color:#fff7ed;background:#834739;box-shadow:inset 0 4px #d6a24a}.landing-bottom{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,.7fr);align-items:end;justify-content:space-between;gap:72px;padding-top:76px;padding-bottom:80px}.landing-bottom .eyebrow{color:#f2c674}.landing-bottom h2{max-width:590px;margin:0;color:#fff8ec;font-size:calc(clamp(34px,4vw,50px) * var(--type-scale, 1));font-weight:470;letter-spacing:-.04em;line-height:1}.landing-bottom>p{max-width:48ch;margin:0;color:#ecd4ca;font-size:calc(14px * var(--type-scale, 1));line-height:1.65}.site-footer{display:flex;align-items:center;justify-content:space-between;padding:24px 0 32px;color:#8eaca1;font-size:calc(12px * var(--type-scale, 1));border-top:1px solid #315064}.auth-page{position:relative;z-index:0;min-height:100vh;min-height:100dvh;overflow-x:clip;background:var(--paper)}.auth-page:before{position:fixed;z-index:-1;inset:0 56% 0 0;content:"";background:var(--navy);box-shadow:inset 0 4px 0 var(--teal)}.auth-header{display:flex;align-items:center;justify-content:space-between;height:84px}.auth-header a{text-decoration:none}.back-link{display:inline-flex;align-items:center;gap:7px;min-height:44px;color:#526a62;font-size:calc(13px * var(--type-scale, 1));font-weight:600}.login-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(480px,1.22fr);align-items:safe center;gap:clamp(72px,9vw,132px);min-height:calc(100vh - 84px);min-height:calc(100dvh - 84px);padding-top:28px;padding-bottom:72px}.login-intro{max-width:430px;color:#edf6f2}.login-intro .eyebrow{color:#72b6a7}.login-intro h1{margin:0;color:#f7f4ea;font-size:calc(clamp(48px,5.6vw,68px) * var(--type-scale, 1));font-weight:470;letter-spacing:-.055em;line-height:.96}.login-intro>p:not(.eyebrow){max-width:380px;margin:24px 0 0;color:#afc2ba;font-size:calc(15px * var(--type-scale, 1));line-height:1.65}.login-rule{display:flex;align-items:flex-start;gap:11px;max-width:390px;margin-top:34px;padding-top:22px;color:#a7bdb5;border-top:1px solid #315064;font-size:calc(13px * var(--type-scale, 1));font-weight:500;line-height:1.5}.login-rule svg{flex:0 0 auto;margin-top:2px;color:#6cc3ae}.login-card{width:min(100%,560px);justify-self:end;padding:30px;border:1px solid var(--line);border-radius:10px;background:var(--card-strong);box-shadow:var(--shadow-md)}.login-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.login-card-head h2{margin:0;color:var(--navy);font-size:calc(25px * var(--type-scale, 1));font-weight:560;letter-spacing:-.03em}.auth-mode{padding:6px 9px;color:#2f685a;border:1px solid #bcd9cf;border-radius:999px;background:#e7f3ed;font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.07em;text-transform:uppercase}.form-error{display:flex;align-items:flex-start;gap:9px;margin-bottom:17px;padding:11px 12px;color:#8f3826;border:1px solid #e8c1b5;border-radius:6px;background:#f9ebe6;font-size:calc(13px * var(--type-scale, 1));line-height:1.45}.form-error svg{flex:0 0 auto;margin-top:2px}.climate-error-retry{flex:0 0 auto;min-height:44px;margin-left:auto;padding:0 11px}.auth-empty-state{display:grid;gap:12px;margin-top:28px;padding:18px;color:var(--muted);border:1px solid #c6ded4;border-radius:8px;background:#f0f7f2;font-size:calc(13px * var(--type-scale, 1));line-height:1.5}.auth-empty-state>svg{color:var(--teal-deep)}.auth-empty-state strong{color:var(--navy);font-size:calc(16px * var(--type-scale, 1))}.auth-empty-state .button{margin-top:8px}.auth-empty-error{color:#9a3e2d}.auth-provider-note{display:flex;align-items:flex-start;gap:9px;margin-top:22px;padding-top:18px;color:var(--muted);border-top:1px solid #dfe6e1;font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.auth-provider-note svg{flex:0 0 auto;margin-top:1px;color:var(--teal-deep)}.satellite-view,.climate-view{overflow:hidden}.climate-source-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:14px 16px;color:#dcefe8;border:1px solid #28566a;border-radius:8px;background:#12394f}.climate-source-banner>div:first-child{display:grid;gap:3px;min-width:0}.climate-source-banner strong{color:#f7f5e9;font-size:calc(13px * var(--type-scale, 1))}.climate-source-banner span{color:#a9c5ba;font-size:calc(12px * var(--type-scale, 1));line-height:1.45}.climate-source-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 14px;flex:0 0 auto}.climate-source-links a{display:inline-flex;align-items:center;gap:6px;color:#bce4d5;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.climate-query-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;min-height:30px;margin-bottom:18px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1))}.climate-query-meta small{color:var(--muted-light);font-family:var(--font-mono);font-size:calc(10px * var(--type-scale, 1))}.climate-boundary-note,.climate-contract-note{display:grid;gap:4px;margin-bottom:18px;padding:12px 14px;color:#66572d;border:1px solid #e2d1a7;border-radius:7px;background:#faf2df;font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.climate-boundary-note strong,.climate-contract-note strong{color:#77511a;font-size:calc(13px * var(--type-scale, 1))}.climate-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:20px}.climate-summary-grid article{display:grid;gap:5px;min-width:0;padding:14px;border:1px solid #c9d9d0;border-radius:8px;background:#f1f7f2}.climate-summary-grid span{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.35}.climate-summary-grid strong{color:var(--navy);font-family:var(--font-display);font-size:calc(25px * var(--type-scale, 1));font-weight:540;letter-spacing:-.035em;line-height:1}.climate-summary-grid small{color:var(--muted-light);font-size:calc(10px * var(--type-scale, 1))}.climate-series{margin-bottom:18px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--card-strong)}.climate-series .panel-head{margin-bottom:16px}.climate-day-list{display:grid;gap:9px}.climate-day{display:grid;gap:6px;padding:10px 12px;border-left:3px solid #6c9c8a;background:#f0f6f1}.climate-day.forecast{border-left-color:var(--gold);background:#fbf6e9}.climate-day-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.climate-day-head span,.climate-day small{color:var(--muted);font-size:calc(11px * var(--type-scale, 1))}.climate-day-head strong{color:var(--navy);font-size:calc(12px * var(--type-scale, 1));font-variant-numeric:tabular-nums}.climate-day small{color:var(--muted-light)}.climate-bar{height:6px;overflow:hidden;border-radius:999px;background:#dce8df}.climate-bar i{display:block;height:100%;min-width:2px;border-radius:inherit;background:var(--teal)}.climate-day.forecast .climate-bar i{background:var(--gold)}.climate-live-panel{display:grid;gap:14px;margin-bottom:18px;padding:16px;border:1px solid #bcd5d3;border-radius:8px;background:#eff8f5}.climate-live-panel .panel-head{margin-bottom:0}.climate-live-panel .panel-head .text-link{min-height:44px;align-items:center}.climate-live-summary{display:grid;gap:3px;padding:12px 14px;border-left:3px solid var(--teal);background:#e0f1eb}.climate-live-summary strong{color:var(--navy);font-family:var(--font-display);font-size:calc(29px * var(--type-scale, 1));font-weight:540;line-height:1}.climate-live-summary span{color:var(--ink-soft);font-size:calc(12px * var(--type-scale, 1));font-weight:600}.climate-live-summary small{color:var(--muted);font-size:calc(10px * var(--type-scale, 1))}.climate-station-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.climate-station-list article{display:grid;gap:4px;min-width:0;padding:11px 12px;border:1px solid #c8deda;border-radius:6px;background:var(--card-strong)}.climate-station-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.climate-station-head strong:first-child{overflow:hidden;color:var(--navy);font-size:calc(12px * var(--type-scale, 1));text-overflow:ellipsis;white-space:nowrap}.climate-station-head strong:last-child{flex:0 0 auto;color:var(--teal-deep);font-size:calc(12px * var(--type-scale, 1));font-variant-numeric:tabular-nums}.climate-station-list span,.climate-station-list small{color:var(--muted);font-size:calc(10px * var(--type-scale, 1));line-height:1.4}.climate-station-list small{color:var(--muted-light)}.climate-empty{display:flex;align-items:center;gap:9px;padding:22px 0 4px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1))}.operational-view{overflow:hidden}.operational-source-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:14px 16px;color:#dcefe8;border:1px solid #28566a;border-radius:8px;background:#12394f}.operational-source-banner>div:first-child{display:grid;gap:3px;min-width:0}.operational-source-banner strong{color:#f7f5e9;font-size:calc(13px * var(--type-scale, 1))}.operational-source-banner span{color:#a9c5ba;font-size:calc(12px * var(--type-scale, 1));line-height:1.45}.operational-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;flex:0 0 auto}.operational-clear-armed{color:#8f3323;border-color:#d8a294;background:#f8e7e1}.operational-clear-armed:hover{color:#7a2b1d;border-color:#c88872;background:#f3dcd4}.operational-clear-hint{flex:1 1 100%;color:var(--danger);font-size:calc(11px * var(--type-scale, 1));font-weight:600;text-align:right}.operational-actions .button{white-space:nowrap}.operational-schema-guide{margin:-7px 0 18px;border:1px solid #d8e4de;border-radius:8px;background:#f8faf8}.operational-schema-guide summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:0 14px;color:#31584c;cursor:pointer;font-size:calc(12px * var(--type-scale, 1));font-weight:650}.operational-schema-guide summary small{color:var(--muted);font-size:calc(10px * var(--type-scale, 1));font-weight:600}.operational-schema-guide summary:after{color:var(--teal-deep);content:"+";font:700 calc(16px * var(--type-scale, 1))/1 var(--font-mono)}.operational-schema-guide[open] summary{border-bottom:1px solid #dce6e0}.operational-schema-guide[open] summary:after{content:"−"}.operational-schema-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;padding:1px;background:#dfe8e3}.operational-schema-grid article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:start;gap:5px 10px;min-width:0;padding:11px 12px;background:#fffef9}.operational-schema-grid article:last-child:nth-child(odd){grid-column:1 / -1}.operational-schema-grid article>div{display:flex;align-items:center;gap:7px;min-width:0}.operational-schema-grid code{overflow-wrap:anywhere;color:#31584c;font:650 calc(11px * var(--type-scale, 1))/1.35 var(--font-mono)}.operational-schema-grid strong{align-self:center;color:#557168;font-size:calc(10px * var(--type-scale, 1));font-weight:650;white-space:nowrap}.operational-schema-grid p{grid-column:1 / -1;margin:0;color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.45}.operational-empty{display:grid;justify-items:start;gap:12px;padding:42px 8px 30px;color:var(--muted)}.operational-empty>svg{color:var(--teal)}.operational-empty strong{color:var(--navy);font-size:calc(18px * var(--type-scale, 1))}.operational-empty>span{max-width:680px;font-size:calc(13px * var(--type-scale, 1));line-height:1.6}.operational-required-fields{display:grid;gap:6px;margin-top:8px;padding:13px 14px;border:1px solid #dfe9e2;border-radius:7px;background:#f8faf8;font-size:calc(12px * var(--type-scale, 1))}.operational-required-fields strong{color:#31584c;font-size:calc(12px * var(--type-scale, 1))}.operational-required-fields code{color:#31584c;font:600 calc(11px * var(--type-scale, 1))/1.5 var(--font-mono);overflow-wrap:anywhere}.operational-required-fields span{color:var(--muted-light);line-height:1.5}.operational-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.operational-trend-panel{margin-bottom:14px}.operational-trend-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.operational-trend-actions .button{white-space:nowrap}.operational-trend-meta{display:flex;justify-content:space-between;gap:12px;margin:-5px 0 3px;color:var(--muted);font-size:calc(11px * var(--type-scale, 1))}.operational-trend-meta span:last-child{color:var(--muted-light);text-align:right}.operational-trend-chart{height:260px;margin:4px -7px -2px}.operational-trend-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:2px;color:var(--muted);font-size:calc(11px * var(--type-scale, 1))}.operational-trend-legend span{display:inline-flex;align-items:center;gap:6px}.operational-trend-tooltip{min-width:174px;max-width:min(260px,calc(100vw - 48px));padding:9px 10px;border:1px solid #cfd9d3;border-radius:8px;background:#fffffbfa;box-shadow:0 8px 20px #112d281a;color:var(--ink);font-family:var(--font-ui);font-size:calc(12px * var(--type-scale, 1));pointer-events:none}.operational-trend-tooltip>strong{display:block;margin-bottom:6px;font-size:calc(12px * var(--type-scale, 1))}.operational-trend-tooltip>div{display:flex;justify-content:space-between;gap:12px;line-height:1.45}.operational-trend-tooltip>div span{color:var(--muted)}.operational-trend-tooltip>div b{font-weight:600;white-space:nowrap}.operational-trend-tooltip>small{display:block;margin-top:6px;color:var(--muted-light);font-size:calc(10px * var(--type-scale, 1));line-height:1.35}.trend-line{display:inline-block;width:18px;height:2px;background:var(--teal)}.trend-line.known{background:#2d6f94}.trend-line.standard{border-top:2px dashed #9a7a36;background:transparent}.operational-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr);gap:14px;margin-bottom:14px}.operational-equity-panel,.operational-side-stack>.panel,.operational-lower-grid>.panel{min-width:0}.operational-equity-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 0 16px;border:1px solid #e1eae4;border-radius:7px;background:#e1eae4;overflow:hidden}.operational-equity-summary div{display:grid;align-content:start;gap:5px;min-width:0;padding:12px;background:#f8faf8}.operational-equity-summary span{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.35}.operational-equity-summary strong{color:var(--navy);font-size:calc(19px * var(--type-scale, 1));font-variant-numeric:tabular-nums}[data-table=operational-equity] :is(th,td):not(:first-child){text-align:right}[data-table=operational-equity] td:first-child{min-width:150px}[data-table=operational-equity] td:first-child strong,[data-table=operational-equity] td:first-child small{display:block}[data-table=operational-equity] td:first-child small{margin-top:3px;color:var(--muted-light);font:10px var(--font-mono)}.operational-side-stack{display:grid;align-content:start;gap:14px}.operational-coverage-list{display:grid;gap:12px}.operational-coverage-item{display:grid;gap:6px}.operational-coverage-item>div:first-child{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:calc(11px * var(--type-scale, 1))}.operational-coverage-item strong{color:var(--ink-soft);font-size:calc(12px * var(--type-scale, 1))}.operational-coverage-item span{font-variant-numeric:tabular-nums}.coverage-track{height:6px;overflow:hidden;border-radius:999px;background:#e0ebe3}.coverage-track i{display:block;height:100%;min-width:2px;border-radius:inherit;background:var(--teal)}.operational-balance-value{display:block;margin:4px 0 5px;color:var(--navy);font:540 calc(34px * var(--type-scale, 1))/1 var(--font-display);letter-spacing:-.04em}.operational-balance-detail{display:block;color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.4}.operational-missing{display:grid;gap:5px;padding:12px 13px;border-left:3px solid var(--gold);background:#fbf6e9}.operational-missing strong{color:#77511a;font-size:calc(12px * var(--type-scale, 1))}.operational-missing span{color:#776b4c;font-size:calc(11px * var(--type-scale, 1));line-height:1.5}.operational-lower-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:0}.operational-status-list{display:grid;gap:1px;border:1px solid #e1eae4;border-radius:7px;background:#e1eae4;overflow:hidden}.operational-status-list div{display:flex;justify-content:space-between;gap:12px;padding:11px 12px;background:#f8faf8;font-size:calc(12px * var(--type-scale, 1))}.operational-status-list strong{color:var(--ink-soft);overflow-wrap:anywhere}.operational-status-list span{color:var(--muted);white-space:nowrap}.operational-receipt-list span{flex:0 0 auto}.operational-receipt-list strong,.operational-receipt-list code{min-width:0;text-align:right}.operational-receipt-list code{color:#31584c;font:600 calc(10px * var(--type-scale, 1))/1.45 var(--font-mono);overflow-wrap:anywhere}.operational-boundary-list{display:grid;gap:9px;margin:0;padding-left:17px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1));line-height:1.55}.operational-boundary-list li::marker{color:var(--teal)}.demographic-view{overflow:hidden}.demographic-source-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px;padding:14px 16px;color:#dcefe8;border:1px solid #28566a;border-radius:8px;background:#12394f}.demographic-source-banner>div:first-child{display:grid;gap:3px;min-width:0}.demographic-source-banner strong{color:#f7f5e9;font-size:calc(13px * var(--type-scale, 1))}.demographic-source-banner span{color:#a9c5ba;font-size:calc(12px * var(--type-scale, 1));line-height:1.45}.demographic-source-links{display:flex;justify-content:flex-end;flex:0 0 auto}.demographic-source-links a{display:inline-flex;align-items:center;gap:6px;color:#bce4d5;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.demographic-controls{display:flex;align-items:end;flex-wrap:wrap;gap:10px 16px;margin-bottom:18px}.demographic-controls label{display:grid;gap:5px;color:var(--muted);font-size:calc(11px * var(--type-scale, 1));font-weight:600}.demographic-controls select{min-width:110px;min-height:44px;padding:9px 30px 9px 10px;color:var(--ink-soft);border:1px solid #c5d8ce;border-radius:6px;background:#fffef9;font:600 calc(12px * var(--type-scale, 1)) var(--font-ui)}.demographic-control-note{align-self:end;padding-bottom:10px;color:var(--muted-light);font-size:calc(11px * var(--type-scale, 1))}.demographic-loading{display:inline-flex;align-items:center;gap:6px;align-self:end;padding-bottom:10px;color:var(--teal-deep);font-size:calc(11px * var(--type-scale, 1));font-weight:600}.demographic-loading svg{animation:spin 1.2s linear infinite}.demographic-loading-card{display:grid;grid-template-columns:auto minmax(0,1fr) 92px;align-items:center;gap:12px;margin-bottom:14px;padding:18px;color:#31584c;border:1px solid #c7dad1;border-radius:8px;background:linear-gradient(110deg,#f2f8f3 20%,#fbfcf8,#f2f8f3 76%);background-size:220% 100%;animation:workspace-loading 1.6s ease-in-out infinite}.demographic-loading-card>svg{color:var(--teal);animation:spin 1.2s linear infinite}.demographic-loading-card>div{display:grid;gap:4px;min-width:0}.demographic-loading-card strong{color:var(--navy);font-size:calc(14px * var(--type-scale, 1))}.demographic-loading-card span{color:var(--muted);font-size:calc(12px * var(--type-scale, 1));line-height:1.45}.demographic-loading-card i{display:block;height:6px;overflow:hidden;border-radius:999px;background:linear-gradient(90deg,#8ec9b2 0 22%,#d9ebe0 22% 45%,#8ec9b2 45% 67%,#d9ebe0 67% 100%);background-size:180px 100%;animation:workspace-loading 1.3s linear infinite}.demographic-error-retry{flex:0 0 auto;min-height:44px;margin-left:auto;padding:0 11px}.demographic-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.demographic-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr);gap:14px}.demographic-grid>.panel{min-width:0}.demographic-comparison-list{display:grid;gap:1px;margin-bottom:16px;border:1px solid #e1eae4;border-radius:7px;background:#e1eae4;overflow:hidden}.demographic-comparison-list div{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:13px;background:#f8faf8}.demographic-comparison-list span{color:var(--muted);font-size:calc(12px * var(--type-scale, 1))}.demographic-comparison-list strong{color:var(--navy);font-size:calc(18px * var(--type-scale, 1));font-variant-numeric:tabular-nums;text-align:right}.demographic-boundary-note{display:grid;gap:5px;padding:12px 13px;border-left:3px solid var(--gold);background:#fbf6e9}.demographic-boundary-note strong{color:#77511a;font-size:calc(12px * var(--type-scale, 1))}.demographic-boundary-note span{color:#776b4c;font-size:calc(11px * var(--type-scale, 1));line-height:1.5}.demographic-boundary-list{display:grid;gap:9px;margin:0;padding-left:17px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1));line-height:1.55}.demographic-boundary-list li::marker{color:var(--teal)}.demographic-empty{display:flex;align-items:center;gap:9px;padding:24px 0 6px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1))}.satellite-source-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:14px 16px;color:#dcefe8;border:1px solid #28566a;border-radius:8px;background:#12394f}.satellite-source-banner>div{display:grid;gap:3px;min-width:0}.satellite-source-banner strong{color:#f7f5e9;font-size:calc(13px * var(--type-scale, 1))}.satellite-source-banner span{color:#a9c5ba;font-size:calc(12px * var(--type-scale, 1));line-height:1.45}.satellite-source-banner a{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;color:#bce4d5;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.satellite-query{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px;margin-bottom:14px}.satellite-query label{display:grid;gap:6px;color:var(--ink-soft);font-size:calc(12px * var(--type-scale, 1));font-weight:600}.satellite-query input{width:100%;min-height:44px;padding:8px 10px;color:var(--ink);border:1px solid var(--line);border-radius:6px;background:var(--card-strong)}.satellite-query .button{min-height:44px}.satellite-query-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;min-height:30px;margin-bottom:18px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1))}.satellite-query-meta small{color:var(--muted-light);font-family:var(--font-mono);font-size:calc(10px * var(--type-scale, 1))}.source-dot{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px #087e781f}.source-dot.is-loading{animation:source-pulse 1.25s ease-in-out infinite}.satellite-error-retry{flex:0 0 auto;min-height:44px;margin-left:auto;padding:0 11px}.satellite-contract-note{display:grid;gap:4px;margin-bottom:18px;padding:12px 14px;color:#66572d;border:1px solid #e2d1a7;border-radius:7px;background:#faf2df;font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.satellite-contract-note strong{color:#77511a;font-size:calc(13px * var(--type-scale, 1))}.satellite-comparison-panel{display:grid;gap:14px;margin-bottom:20px;padding:16px;border:1px solid #c5d9d2;border-radius:9px;background:linear-gradient(145deg,#f8fbf8,#eef6f2);animation:satellite-reveal .42s var(--ease-out) both}.satellite-comparison-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.satellite-comparison-head h2{margin:2px 0 0;color:var(--navy);font-size:calc(23px * var(--type-scale, 1));letter-spacing:-.035em}.satellite-mode-toggle{display:inline-flex;min-height:44px;padding:3px;border:1px solid #bdd2ca;border-radius:7px;background:#e4efea}.satellite-mode-toggle button{min-height:44px;padding:7px 12px;color:#48645c;border:0;border-radius:5px;background:transparent;font:650 calc(11px * var(--type-scale, 1))/1.2 var(--font-ui);cursor:pointer;transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.satellite-mode-toggle button.active{color:#123f3b;background:#fffef9;box-shadow:0 1px 4px #123f3b21}.satellite-comparison-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.satellite-comparison-facts>span{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 8px;min-width:0;padding:11px 12px;color:var(--teal-deep);border:1px solid #d5e3dd;border-radius:6px;background:#fffef9cc}.satellite-comparison-facts svg{grid-row:1 / 3;align-self:center}.satellite-comparison-facts b{min-width:0;overflow:hidden;color:var(--navy);font-size:calc(12px * var(--type-scale, 1));text-overflow:ellipsis;white-space:nowrap}.satellite-comparison-facts small{min-width:0;overflow:hidden;color:var(--muted);font-size:calc(10px * var(--type-scale, 1));line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.satellite-comparison-stage{position:relative;aspect-ratio:1.85;min-height:280px;overflow:hidden;border:1px solid #244f5a;border-radius:8px;background:#12394f;box-shadow:0 14px 34px #0d303826;isolation:isolate}.satellite-comparison-stage img{display:block;width:100%;height:100%;object-fit:cover}.satellite-comparison-after,.satellite-comparison-before{position:absolute;inset:0}.satellite-comparison-before{z-index:1;overflow:hidden}.satellite-comparison-before img{position:absolute;inset:0}.satellite-comparison-label{position:absolute;z-index:3;top:12px;padding:6px 8px;color:#f6f8ed;border:1px solid rgba(255,255,255,.2);border-radius:5px;background:#092331c7;font-size:calc(10px * var(--type-scale, 1));font-weight:650;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.satellite-comparison-label.before{left:12px}.satellite-comparison-label.after{right:12px}.satellite-comparison-divider{position:absolute;z-index:4;top:0;bottom:0;width:2px;transform:translate(-1px);background:#fffffff0;box-shadow:0 0 0 1px #09233140,0 0 16px #09233157;pointer-events:none}.satellite-comparison-divider span{position:absolute;top:50%;left:50%;width:36px;height:36px;transform:translate(-50%,-50%);border:2px solid #fff;border-radius:50%;background:#09363ddb;box-shadow:0 3px 12px #09233159}.satellite-comparison-divider span:before,.satellite-comparison-divider span:after{position:absolute;top:50%;width:7px;height:7px;border-top:2px solid #fff;border-left:2px solid #fff;content:""}.satellite-comparison-divider span:before{left:7px;transform:translateY(-50%) rotate(-45deg)}.satellite-comparison-divider span:after{right:7px;transform:translateY(-50%) rotate(135deg)}.satellite-image-pair-slider{display:grid;grid-template-columns:minmax(190px,auto) minmax(140px,1fr) 62px;align-items:center;gap:12px;padding:10px 12px;border:1px solid #cfe0d8;border-radius:7px;background:#fffef9cc}.satellite-image-pair-slider>span{display:grid;gap:2px;min-width:0}.satellite-image-pair-slider strong{color:var(--navy);font-size:calc(11px * var(--type-scale, 1))}.satellite-image-pair-slider small{overflow:hidden;color:var(--muted);font-size:calc(10px * var(--type-scale, 1));text-overflow:ellipsis;white-space:nowrap}.satellite-image-pair-slider input{width:100%;min-height:44px;accent-color:var(--teal);cursor:ew-resize}.satellite-image-pair-slider output{color:var(--teal-deep);font-family:var(--font-mono);font-size:calc(11px * var(--type-scale, 1));text-align:right}.satellite-comparison-slider{display:grid;grid-template-columns:auto minmax(120px,1fr) 42px;align-items:center;gap:12px;color:var(--ink-soft);font-size:calc(11px * var(--type-scale, 1));font-weight:650}.satellite-comparison-slider input{width:100%;min-height:44px;accent-color:var(--teal);cursor:ew-resize}.satellite-comparison-slider output{color:var(--teal-deep);font-family:var(--font-mono);font-size:calc(11px * var(--type-scale, 1));text-align:right}.satellite-comparison-boundary,.satellite-comparison-unavailable{display:flex;align-items:flex-start;gap:8px;color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.5}.satellite-comparison-boundary svg,.satellite-comparison-unavailable svg{flex:0 0 auto;margin-top:1px;color:var(--teal-deep)}.satellite-comparison-unavailable{align-items:center;min-height:86px;padding:14px;border:1px dashed #b9cec6;border-radius:7px;background:#fffef9b3}.satellite-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.satellite-scene-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--card-strong)}.satellite-scene-image{position:relative;aspect-ratio:1.35;overflow:hidden;background:#173e50}.satellite-scene-image img{display:block;width:100%;height:100%;object-fit:cover}.satellite-image-unavailable{display:grid;width:100%;height:100%;padding:18px;place-items:center;color:#d4e4df;background:linear-gradient(135deg,#173e50,#244d50);font-size:calc(12px * var(--type-scale, 1));font-weight:600;text-align:center}.satellite-scene-image>span{position:absolute;right:8px;bottom:8px;padding:4px 7px;color:#f6f8ed;border-radius:4px;background:#0e2a47d1;font-size:calc(10px * var(--type-scale, 1));font-weight:600}.satellite-scene-body{display:grid;gap:7px;padding:13px}.satellite-scene-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.satellite-scene-head strong{color:var(--navy);font-size:calc(14px * var(--type-scale, 1))}.satellite-scene-head span,.satellite-scene-body>span{color:var(--muted);font-size:calc(11px * var(--type-scale, 1))}.satellite-scene-body code{overflow:hidden;color:var(--ink-soft);font:10px/1.4 var(--font-mono);text-overflow:ellipsis;white-space:nowrap}.satellite-scene-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}.satellite-scene-actions .button{min-height:44px;padding:8px 10px;font-size:calc(11px * var(--type-scale, 1))}.satellite-empty{display:flex;align-items:center;gap:9px;padding:22px 0 4px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1))}.satellite-loading-state{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(80px,140px);align-items:center;gap:10px;padding:22px 0 4px;color:var(--teal-deep);font-size:calc(12px * var(--type-scale, 1))}.satellite-loading-state>svg{animation:spin 1.2s linear infinite}.satellite-loading-state i{display:block;height:6px;overflow:hidden;border-radius:999px;background:linear-gradient(90deg,#8ec9b2 0 22%,#d9ebe0 22% 45%,#8ec9b2 45% 67%,#d9ebe0 67% 100%);background-size:180px 100%;animation:workspace-loading 1.3s linear infinite}.requirements-command-view{overflow:hidden}.requirements-source-note{margin-bottom:12px}.requirements-decision-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:9px 13px;color:#45665c;border:1px solid #d2dfd8;border-left:3px solid var(--teal);border-radius:8px;background:#f7faf7;font-size:calc(11px * var(--type-scale, 1));line-height:1.42}.requirements-decision-strip strong{display:inline-flex;align-items:baseline;gap:6px;flex:0 0 auto;color:var(--navy);font-size:calc(12px * var(--type-scale, 1))}.requirements-decision-strip strong span{font:700 calc(22px * var(--type-scale, 1))/1 var(--font-display);letter-spacing:-.04em}.requirements-decision-strip>span{max-width:560px;color:var(--muted);text-align:right}.requirements-tab-list{display:flex;gap:3px;margin-top:12px;border-bottom:1px solid #d8e2dc}.requirements-tab{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 12px;color:#637970;border:0;border-bottom:2px solid transparent;background:transparent;cursor:pointer;font-size:calc(12px * var(--type-scale, 1));font-weight:700}.requirements-tab b{display:grid;min-width:21px;height:21px;place-items:center;color:inherit;border-radius:999px;background:#edf2ee;font:700 calc(10px * var(--type-scale, 1))/1 var(--font-mono)}.requirements-tab.selected{color:var(--navy);border-bottom-color:var(--navy)}.requirements-tab.selected b{color:#fff;background:var(--navy)}.requirements-tab.implemented.selected{color:#126c61;border-bottom-color:#16796f}.requirements-tab.implemented.selected b{background:#16796f}.requirements-tab.partial.selected{color:#81580f;border-bottom-color:#aa7a25}.requirements-tab.partial.selected b{background:#aa7a25}.requirements-tab.blocked.selected{color:#913d2b;border-bottom-color:#ae513b}.requirements-tab.blocked.selected b{background:#ae513b}.requirements-command-bar{display:grid;grid-template-columns:minmax(250px,1fr) minmax(170px,.42fr) auto auto;align-items:center;gap:8px;margin-top:10px;padding:8px;border:1px solid #d9e3de;border-radius:9px;background:#fbfcfa}.requirements-command-bar .search-field{width:100%}.requirements-domain-filter{display:block}.requirements-domain-filter select{width:100%;min-height:44px;padding:8px 30px 8px 10px;color:var(--ink-soft);border:1px solid var(--line);border-radius:7px;background:var(--card-strong);font-size:calc(12px * var(--type-scale, 1))}.requirements-result-count{min-width:max-content;color:var(--muted);font:700 calc(11px * var(--type-scale, 1))/1 var(--font-mono);white-space:nowrap}.requirements-command-bar .button{min-height:44px}.requirements-workbench{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(300px,.68fr);align-items:start;gap:12px;margin-top:12px}.requirements-result-panel,.requirement-detail-panel{min-width:0;border:1px solid #d9e3dd;border-radius:9px;background:var(--card-strong)}.requirements-list-head,.requirement-result-row{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(86px,.46fr) minmax(132px,.74fr) minmax(130px,.76fr);align-items:center;gap:12px}.requirements-list-head{min-height:38px;padding:0 13px;color:#71847c;border-bottom:1px solid #e0e8e3;background:#f7faf8;font-size:calc(9px * var(--type-scale, 1));font-weight:750;letter-spacing:.08em;text-transform:uppercase}.requirements-result-list{max-height:min(68svh,680px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.requirement-result-row{position:relative;width:100%;min-height:72px;padding:10px 13px 10px 16px;color:inherit;border:0;border-bottom:1px solid #e5ebe7;background:transparent;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.requirement-result-row:last-child{border-bottom:0}.requirement-result-row:before{position:absolute;top:10px;bottom:10px;left:0;width:3px;border-radius:0 3px 3px 0;background:#98aaa2;content:""}.requirement-result-row.implemented:before{background:#1b8577}.requirement-result-row.partial:before{background:#bd8b2f}.requirement-result-row.blocked:before{background:#b95b45}.requirement-result-row:hover,.requirement-result-row:focus-visible{background:#f4f8f5}.requirement-result-row:focus-visible{outline:2px solid #216956;outline-offset:-2px}.requirement-result-row.selected{background:#eef6f2;box-shadow:inset 0 0 0 1px #2169562e}.requirement-result-copy{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;column-gap:8px;row-gap:3px;min-width:0}.requirement-result-id{color:var(--navy);font:700 calc(10px * var(--type-scale, 1))/1.2 var(--font-mono)}.requirement-result-copy strong{min-width:0;color:#284d42;font-size:calc(12px * var(--type-scale, 1));line-height:1.32}.requirement-result-copy small{display:none;grid-column:1 / -1;overflow:hidden;color:var(--muted);font-size:calc(10px * var(--type-scale, 1));line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.requirement-row-domain{color:#537268;font-size:calc(10px * var(--type-scale, 1));font-weight:700;line-height:1.35}.requirement-row-decision{display:grid;justify-items:start;gap:3px;min-width:0}.requirement-row-decision small{overflow:hidden;max-width:100%;color:var(--muted-light);font-size:calc(9px * var(--type-scale, 1));line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.requirement-row-source{overflow:hidden;color:#647970;font:10px/1.35 var(--font-mono);text-overflow:ellipsis;white-space:nowrap}.requirement-state-chip{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:4px 8px;border-radius:999px;font-size:calc(10px * var(--type-scale, 1));font-weight:700;line-height:1;white-space:nowrap}.requirement-state-chip.implemented{color:#176e62;background:#e4f3ed}.requirement-state-chip.partial{color:#875b12;background:#fff3d8}.requirement-state-chip.blocked{color:#93432f;background:#fee9e2}.requirement-detail-panel{position:sticky;top:88px;display:grid;gap:14px;padding:17px}.requirement-detail-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.requirement-detail-head>span:first-child{color:var(--teal-deep);font:700 calc(12px * var(--type-scale, 1))/1 var(--font-mono)}.requirement-detail-panel>h2{margin:-2px 0 0;color:var(--navy);font-size:calc(25px * var(--type-scale, 1));letter-spacing:-.04em;line-height:1.08}.requirement-detail-meta{display:grid;gap:8px;margin:0;padding-bottom:13px;border-bottom:1px solid #dfe7e2}.requirement-detail-meta>div{display:grid;gap:2px}.requirement-detail-meta dt{color:#55776b;font-size:calc(9px * var(--type-scale, 1));font-weight:750;letter-spacing:.08em;text-transform:uppercase}.requirement-detail-meta dd{margin:0;color:var(--muted);font:10px/1.45 var(--font-mono)}.requirement-detail-panel>section{display:grid;gap:6px}.requirement-detail-panel>section>strong{color:#31584c;font-size:calc(13px * var(--type-scale, 1));line-height:1.4}.requirement-detail-panel p{margin:0;color:var(--muted);font-size:calc(12px * var(--type-scale, 1));line-height:1.55}.requirement-decision{padding:11px 12px;border-left:3px solid #8da9a0;background:#f4f8f5}.requirement-decision.implemented{border-color:#1b8577;background:#eef8f3}.requirement-decision.partial{border-color:#bd8b2f;background:#fff8e8}.requirement-decision.blocked{border-color:#b95b45;background:#fff3ef}.requirement-gate{padding:12px;border:1px solid #e4d0a3;border-radius:7px;background:#fff8e8}.requirement-gate>div{display:flex;align-items:flex-start;gap:8px}.requirement-gate svg{flex:0 0 auto;margin-top:2px;color:#996515}.requirement-no-gate{display:flex!important;align-items:center;grid-template-columns:auto 1fr;gap:8px!important;padding:11px 12px;color:#286b58;border:1px solid #c4ddcf;border-radius:7px;background:#eef8f2;font-size:calc(11px * var(--type-scale, 1));line-height:1.45}.requirement-no-gate svg{flex:0 0 auto}.requirement-detail-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;margin-top:2px}.requirement-detail-actions .button{min-height:44px}.requirement-evidence-link{justify-self:stretch}.requirements-list-state{display:grid;place-items:center;gap:8px;min-height:192px;padding:24px;color:var(--muted);text-align:center}.requirements-list-state strong{color:var(--ink-soft);font-size:calc(13px * var(--type-scale, 1))}.requirements-list-state>span{max-width:460px;font-size:calc(11px * var(--type-scale, 1));line-height:1.45}.requirements-list-error{color:#93432f;background:#fff7f3}.requirements-list-error strong{color:#81321f}.requirements-list-loading{color:#466a5e}.requirements-loading-lines{display:grid;gap:7px;width:min(320px,100%)}.requirements-loading-lines i{display:block;height:8px;border-radius:999px;background:linear-gradient(90deg,#e5eee9 20%,#f7faf8,#e5eee9 50%);background-size:180% 100%;animation:workspace-loading 1.25s linear infinite}.requirements-loading-lines i:nth-child(2){width:78%}.requirements-loading-lines i:nth-child(3){width:56%}.requirements-detail-empty{min-height:220px}.login-form{display:grid;gap:8px}.login-form label{margin-top:8px;color:var(--ink-soft);font-size:calc(12px * var(--type-scale, 1));font-weight:600}.input-wrap{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 13px;color:#81968d;border:1px solid var(--line);border-radius:7px;background:#f9f9f4;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.input-wrap:focus-within{border-color:#5d9d8c;box-shadow:0 0 0 3px #087e781a}.input-wrap input{min-width:0;flex:1;color:var(--ink);border:0;outline:0;background:transparent;font-size:calc(14px * var(--type-scale, 1))}.input-wrap input::placeholder{color:#aab9b2}.input-action{display:grid;width:44px;height:44px;place-items:center;color:#637a71;border:0;border-radius:5px;background:transparent}.login-form .button{margin-top:12px}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:0 0 0 1000px #f9f9f4 inset;caret-color:var(--teal)}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh;min-height:100dvh;color:var(--ink);background:var(--paper)}.sidebar{position:sticky;top:0;z-index:12;display:flex;flex-direction:column;width:260px;height:100vh;height:100dvh;padding:24px 14px max(18px,env(safe-area-inset-bottom));color:#dbe9e4;background:var(--navy);box-shadow:inset 0 4px 0 var(--teal)}.sidebar-head{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;padding:2px 10px 28px}.mobile-close,.mobile-menu{display:none}.scope-card{display:grid;flex:0 0 auto;gap:5px;margin:0 7px 26px;padding:15px 14px;border:1px solid #31536b;border-radius:8px;background:#143651}.scope-card strong{color:#f3f4ec;font-size:calc(13px * var(--type-scale, 1));font-weight:600}.scope-card span:not(.scope-label),.scope-card small{color:#9db5ae;font-size:calc(12px * var(--type-scale, 1));line-height:1.35}.scope-label{color:#64bbaa;font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.09em;text-transform:uppercase}.sidebar-nav{display:grid;min-height:0;padding-right:3px;overflow-y:auto;overscroll-behavior:contain;flex:1 1 auto;align-content:start;gap:14px;scrollbar-color:#426579 transparent;scrollbar-width:thin}.nav-group{--nav-accent: #63c8b4;display:grid;gap:4px}.nav-group-map{--nav-accent: #79b9d5}.nav-group-monitor{--nav-accent: #e0b35a}.nav-group-evidence{--nav-accent: #d88972}.nav-group-label{padding:0 13px 2px;color:var(--nav-accent);font-size:calc(10px * var(--type-scale, 1));font-weight:650;letter-spacing:.12em;line-height:1.2;text-transform:uppercase}.nav-item{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:46px;padding:0 13px;scroll-margin-block:4px;color:#a7bbb5;border:1px solid transparent;border-radius:7px;background:transparent;text-align:left;font-size:calc(13px * var(--type-scale, 1));font-weight:500;transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.nav-item.active{color:#fffdf7;border-color:#315a70;background:#1a4762;box-shadow:inset 3px 0 0 var(--nav-accent, #63c8b4);font-weight:600}.nav-item.active svg{color:var(--nav-accent, #72d2bd)}.sidebar-bottom{display:grid;flex:0 0 auto;gap:4px;margin-top:12px;padding-top:12px;border-top:1px solid #2e4d64}.nav-item.signout{color:#d8a596}.workspace-main{min-width:0;background:radial-gradient(circle at 96% 0%,var(--view-glow, rgba(23, 55, 94, .1)),transparent 30rem),linear-gradient(180deg,var(--paper) 0%,var(--paper-deep) 100%)}.workspace-header{position:sticky;top:0;z-index:7;display:flex;align-items:center;justify-content:space-between;min-height:68px;padding:0 36px;border-bottom:1px solid #c7d5ce;background:#faf9f3f0;box-shadow:0 4px 18px #163a310d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.breadcrumb{display:flex;align-items:center;gap:8px;color:var(--muted-light);font-size:calc(12px * var(--type-scale, 1))}.breadcrumb-home{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 8px;color:#5f756d;border:0;border-radius:6px;background:transparent;cursor:pointer;font:600 calc(12px * var(--type-scale, 1))/1 var(--font-sans)}.breadcrumb-home:hover{color:#0b7069;background:#edf5f1}.breadcrumb-home:focus-visible{outline:3px solid rgba(8,126,120,.24);outline-offset:1px}.breadcrumb strong{color:var(--ink-soft);font-weight:600}.header-tools{display:flex;align-items:center;gap:16px}.data-status{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1));font-weight:500}.avatar{display:grid;width:34px;height:34px;place-items:center;color:#f9f7ef;border-radius:50%;background:var(--navy);font-size:calc(12px * var(--type-scale, 1));font-weight:600}.header-print-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 10px;color:var(--navy);border:1px solid var(--line-strong);border-radius:7px;background:var(--card-strong);font-size:calc(11px * var(--type-scale, 1));font-weight:650}.workspace-content{position:relative;width:min(1280px,calc(100% - 72px));margin:0 auto;padding:30px 0 64px}.horizon-bar{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:34px;padding:15px 16px;border:1px solid #c5d9d0;border-left:4px solid var(--teal);border-radius:8px;background:linear-gradient(100deg,#e1f2ec,#e9f0e9 56%,#f8efd9);box-shadow:0 8px 20px #1f4c3d0f}.horizon-label{display:flex;align-items:center;gap:7px;margin-bottom:8px;color:#5f766d;font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.09em;text-transform:uppercase}.horizon-label svg{color:var(--view-accent, var(--teal))}.horizon-options{display:flex;gap:3px;padding:3px;border:1px solid #c8d4ce;border-radius:7px;background:#dde5df}.horizon-option{min-width:72px;padding:7px 10px;color:#536a62;border:0;border-radius:5px;background:transparent;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.horizon-option.selected{color:#fffdf7;background:var(--navy);box-shadow:var(--shadow-sm)}.workspace-title-row{position:relative;display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:20px;padding-left:16px}.workspace-title-row:before{position:absolute;top:4px;bottom:2px;left:0;width:4px;border-radius:999px;content:"";background:linear-gradient(180deg,var(--teal) 0%,var(--blue) 52%,var(--gold) 100%)}.workspace-title-row h1{margin:0;color:var(--navy);font-size:calc(clamp(34px,3vw,42px) * var(--type-scale, 1));font-weight:520;letter-spacing:-.045em;line-height:1}.workspace-title-row .button{min-width:145px;flex:0 0 auto;white-space:nowrap}.title-actions{display:flex;align-items:center;gap:10px}.operator-work-menu{display:grid;grid-template-columns:155px minmax(215px,.72fr) minmax(0,1.45fr);align-items:center;gap:16px;margin-bottom:14px;padding:13px 14px;border:1px solid #cbdcd4;border-radius:9px;background:linear-gradient(105deg,#f4faf6,#eef5f1);box-shadow:0 8px 20px #1739300d}.operator-work-menu-head{display:grid;gap:3px}.operator-work-menu-head h2{margin:0;color:var(--navy);font-size:calc(19px * var(--type-scale, 1));letter-spacing:-.025em;line-height:1.12}.operator-primary-action{width:100%;justify-content:flex-start;min-height:48px;padding-right:13px;padding-left:13px}.operator-primary-action strong{min-width:0;flex:1;text-align:left}.operator-primary-action>svg:last-child{flex:0 0 auto;margin-left:auto}.operator-secondary-actions{display:flex;align-items:center;flex-wrap:wrap;gap:2px 10px;min-width:0}.operator-secondary-action{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 6px;color:#31584c;border:0;border-radius:6px;background:transparent;cursor:pointer;text-align:left;transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.operator-secondary-action>svg{flex:0 0 auto;color:var(--teal-deep)}.operator-secondary-action strong{font-size:calc(12px * var(--type-scale, 1));font-weight:650;line-height:1.25}.operator-secondary-action:focus-visible{outline:3px solid var(--focus-ring);outline-offset:1px}.treatment-status{display:grid;grid-template-columns:auto minmax(180px,1fr) auto auto;align-items:center;gap:10px 16px;margin-bottom:14px;padding:10px 14px;color:var(--ink-soft);border:1px solid #cbd8d3;border-radius:8px;background:#fff;box-shadow:var(--shadow-sm)}.treatment-status-copy{display:grid;gap:1px}.treatment-status-copy span{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));font-weight:650;letter-spacing:.05em;text-transform:uppercase}.treatment-status-copy strong{color:var(--navy);font-size:calc(14px * var(--type-scale, 1));font-variant-numeric:tabular-nums}.treatment-status-meter{overflow:hidden;height:8px;border-radius:999px;background:#ead8d2;box-shadow:inset 0 0 0 1px #a53f2a1f}.treatment-status-meter i{display:block;min-width:6px;height:100%;border-radius:inherit;background:var(--teal)}.treatment-status-gap{color:#8d412f;font-size:calc(12px * var(--type-scale, 1));font-weight:650;white-space:nowrap}.treatment-status .text-button{min-height:44px;white-space:nowrap}.kpi-grid{display:grid;grid-template-columns:1.18fr repeat(3,1fr);gap:12px;margin-bottom:14px}.kpi-card{position:relative;display:grid;align-content:space-between;gap:10px;min-height:138px;overflow:hidden;padding:19px;border:1px solid var(--line);border-radius:9px;background:var(--card-strong);box-shadow:0 8px 20px #1739300f}.kpi-card>span{color:var(--muted);font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.02em}.kpi-card>strong{color:var(--navy);font-family:var(--font-display);font-size:calc(clamp(30px,2.5vw,38px) * var(--type-scale, 1));font-weight:520;letter-spacing:-.045em;line-height:1}.kpi-card>small{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1));font-weight:500;line-height:1.35}.kpi-card-population{color:#edf6f2;border-color:var(--navy);background:var(--navy);box-shadow:inset 0 4px #5fc4b1}.kpi-card-population>span{color:#9fbab1}.kpi-card-population>strong{color:#fff8e9}.kpi-card-population>small{color:#b5c9c1}.kpi-card-water{border-color:#b8d9d0;background:#e8f4ef;box-shadow:inset 0 4px 0 var(--teal)}.kpi-card-water>strong{color:var(--teal-deep)}.kpi-card-sewerage{border-color:#bad4e0;background:#eaf2f6;box-shadow:inset 0 4px 0 var(--blue)}.kpi-card-sewerage>strong{color:#215b7d}.kpi-card-caution{border-color:#e4d1a8;background:#f8eed8;box-shadow:inset 0 4px 0 var(--gold)}.kpi-card-caution>strong{color:#7b5317}.kpi-card-caution>small{color:#725d38}.kpi-card .trend{color:var(--green)}.kpi-card .trend.negative{color:var(--orange)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.26fr) minmax(350px,.74fr);gap:14px;margin-bottom:14px}.panel{min-width:0;padding:20px;border:1px solid var(--line);border-radius:9px;background:#fffef9f0;box-shadow:0 10px 24px #1739300e}.dashboard-grid>.panel:first-child{border-top:3px solid var(--teal)}.dashboard-grid>.chart-panel{border-top:3px solid var(--gold)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:16px}.panel-kicker{display:block;margin-bottom:6px;color:#55776b;font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.1em;text-transform:uppercase}.panel h2{margin:0;color:var(--navy);font-size:calc(21px * var(--type-scale, 1));font-weight:540;letter-spacing:-.025em;line-height:1.12}.map-panel{padding-bottom:12px}.map-wrap{position:relative;min-height:380px;overflow:hidden;border:1px solid #c8d5ce;border-radius:8px;background:#dfe9e5}.map-loading-state{display:flex;min-height:380px;align-items:center;justify-content:center;gap:9px;color:#42675b;border:1px solid #c8d5ce;border-radius:8px;background:#edf4ef;font-size:calc(13px * var(--type-scale, 1))}.map-loading-preview{position:relative;min-height:380px;overflow:hidden;border:1px solid #c8d5ce;border-radius:8px;background:#153b49}.map-loading-preview .source-map-preview{min-height:380px;border:0;border-radius:0;box-shadow:none}.map-loading-overlay{position:absolute;top:11px;right:11px;display:inline-flex;align-items:center;gap:8px;padding:8px 10px;color:#315d50;border:1px solid rgba(255,254,249,.9);border-radius:6px;background:#fafaf5f2;font-size:calc(12px * var(--type-scale, 1));font-weight:600;box-shadow:0 3px 12px #223d311a}.map-loading-overlay .source-dot{flex:0 0 auto}.map-fallback-preview{position:absolute;z-index:1;inset:0}.map-fallback-preview .source-map-preview,.map-fallback-preview .hero-map-state{min-height:100%;border:0;border-radius:0}.map-wrap>.demand-map{position:absolute;inset:0}.map-label{position:absolute;top:11px;left:11px;max-width:calc(100% - 190px);overflow:hidden;padding:7px 9px;color:#355d53;border:1px solid rgba(255,254,249,.86);border-radius:6px;background:#fafaf5ed;font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.map-source-meta{color:var(--muted);font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.04em;text-transform:uppercase}.map-legend{position:absolute;bottom:42px;left:10px;display:flex;flex-wrap:wrap;gap:10px;padding:8px 9px;color:#405c53;border:1px solid rgba(255,254,249,.9);border-radius:6px;background:#fafaf5f0;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.map-legend span{display:inline-flex;align-items:center;gap:5px}.map-status{position:absolute;top:11px;right:11px;padding:7px 9px;color:#315d50;border:1px solid rgba(255,254,249,.9);border-radius:6px;background:#fafaf5f2;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.map-tool-stack{position:absolute;z-index:3;top:51px;right:11px;display:flex;gap:7px}.map-find-trigger,.map-reset-trigger,.map-layer-trigger{min-height:44px;padding:0 12px;color:#274f44;border:1px solid #afc8bb;border-radius:6px;background:#f9faf5;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.map-find-trigger[aria-expanded=true],.map-reset-trigger:active,.map-layer-trigger[aria-expanded=true]{color:#fffdf7;border-color:var(--teal);background:var(--teal)}.map-find-trigger:disabled,.map-reset-trigger:disabled,.map-layer-trigger:disabled{cursor:wait;opacity:.68}.map-layer-panel{position:absolute;z-index:4;top:101px;right:11px;display:grid;gap:2px;min-width:220px;padding:8px;overscroll-behavior:contain;color:#3d5f54;border:1px solid #b7cabf;border-radius:7px;background:#fffef9;font-size:calc(12px * var(--type-scale, 1));box-shadow:var(--shadow-md)}.map-layer-panel label{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 6px;cursor:pointer}.map-layer-panel input{width:16px;height:16px;accent-color:var(--teal)}.map-popup{display:grid;gap:7px;min-width:210px;color:var(--muted);font:12px/1.4 var(--font-ui)}.map-popup-title{color:var(--navy);font-family:var(--font-display);font-size:calc(16px * var(--type-scale, 1));font-weight:560}.map-popup-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px;padding-top:5px;border-top:1px solid #e4ece6}.map-popup-row span{color:#70867d;font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.04em}.map-popup-row strong{overflow-wrap:anywhere;color:#31554a;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.map-wrap .maplibregl-popup-content{padding:12px;border-radius:6px;box-shadow:0 8px 20px #223d3126}.map-selection-chip{position:absolute;z-index:3;bottom:88px;left:10px;display:flex;align-items:center;gap:8px;max-width:calc(100% - 20px);min-height:44px;padding:5px 6px 5px 10px;color:#355d53;border:1px solid rgba(255,254,249,.94);border-radius:6px;background:#fafaf5f5;box-shadow:var(--shadow-sm)}.map-selection-chip span{color:#6f877d;font-size:calc(10px * var(--type-scale, 1));font-weight:700;letter-spacing:.08em;text-transform:uppercase}.map-selection-chip strong{min-width:0;overflow:hidden;font-size:calc(12px * var(--type-scale, 1));font-weight:650;text-overflow:ellipsis;white-space:nowrap}.map-selection-chip button{min-width:44px;min-height:44px;margin-left:auto;padding:0 9px;color:#31594b;border:0;border-radius:5px;background:#e8f2ed;font-size:calc(12px * var(--type-scale, 1));font-weight:650}.map-wrap .maplibregl-popup-close-button{width:44px;height:44px;color:#567169;font-size:calc(18px * var(--type-scale, 1))}.map-error{position:absolute;right:10px;bottom:10px;display:grid;gap:7px;max-width:280px;padding:10px;color:#7e5316;border:1px solid #e3ca91;border-radius:6px;background:#fbf0d9;font-size:calc(12px * var(--type-scale, 1))}.map-error .text-button{justify-self:start;min-height:44px;padding:0 9px;color:#8f5a18;border:1px solid #d9b875;border-radius:5px;background:#fffef9ad;text-decoration:underline;text-underline-offset:3px}.map-attribution{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:8px 2px 0;color:#788b83;font-size:calc(12px * var(--type-scale, 1));line-height:1.4}.map-attribution a{color:#4d7567;text-decoration:underline;text-underline-offset:2px}.map-feature-inspector{margin-top:10px;border:1px solid var(--line);border-radius:7px;background:#f5f6f0}.map-feature-inspector summary{display:flex;align-items:center;min-height:44px;padding:0 12px;color:#365d52;cursor:pointer;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.map-feature-inspector>label{display:grid;gap:7px;padding:0 12px 12px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1));font-weight:500}.map-feature-inspector input,.map-feature-inspector select{width:100%;min-height:44px;padding:0 11px;color:#284f44;border:1px solid #bfd0c7;border-radius:6px;background:#fffef9;font-size:calc(13px * var(--type-scale, 1))}.map-feature-inspector select{padding-right:32px}.map-feature-count{display:block;padding:0 12px 10px;color:#6f877d;font-size:calc(11px * var(--type-scale, 1));font-weight:600;letter-spacing:.04em}.map-inspector-reset{margin:0 12px 12px}.map-selected-feature{display:grid;gap:8px;margin:0 11px 11px;padding:11px;border-left:3px solid #6f9a88;background:#eef5f1}.map-selected-feature-head{display:grid;gap:3px}.map-selected-feature-head strong{overflow-wrap:anywhere;color:#31594b;font-size:calc(13px * var(--type-scale, 1))}.map-selected-feature-head span{color:#6f877d;font-family:var(--font-mono);font-size:calc(10px * var(--type-scale, 1))}.map-selected-feature dl{display:grid;gap:5px;margin:0}.map-selected-feature dl div{display:grid;grid-template-columns:minmax(90px,.8fr) minmax(0,1.2fr);gap:8px;padding-top:5px;border-top:1px solid #dbe7df}.map-selected-feature dt{color:#6f877d;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.map-selected-feature dd{overflow-wrap:anywhere;margin:0;color:#365e51;font-size:calc(12px * var(--type-scale, 1))}.map-selected-feature-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-top:3px}.map-selected-feature-actions>span{flex-basis:100%;color:#426c5e;font-size:calc(11px * var(--type-scale, 1));font-weight:600}.legend-dot{display:inline-block;width:8px;height:8px;margin-right:3px;border-radius:50%;background:var(--green)}.legend-dot.critical{background:var(--orange)}.legend-dot.watch{background:var(--gold)}.legend-dot.stable{background:var(--green)}.legend-dot.ward{background:#157565}.legend-dot.road{background:#d2693c}.legend-dot.drainage{background:#2d78b0}.legend-dot.water{background:#147da3}.legend-dot.asset{background:#d58a16}.legend-dot.distribution{background:#087e78;box-shadow:0 0 0 2px #d7eee5}.legend-dot.selected{background:#f2c14e;box-shadow:0 0 0 2px #fffdf8,0 0 0 3px #c39120}.legend-gradient{display:inline-block;width:28px;height:8px;margin-right:3px;border-radius:999px}.legend-gradient.network{background:linear-gradient(90deg,#bdd5df,#4b91b1,#155b89)}.legend-gradient.urban-form{background:linear-gradient(90deg,#d7e4de,#68ad98,#0a514a)}.spatial-source-note{margin-bottom:16px}.spatial-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}.spatial-summary-card{display:grid;align-content:start;gap:7px;min-width:0;min-height:126px;padding:15px;border:1px solid #d8e4dd;border-radius:8px;background:#f8faf7;animation:spatial-reveal .42s var(--ease-out) both}.spatial-summary-card:nth-child(2){animation-delay:55ms}.spatial-summary-card:nth-child(3){animation-delay:.11s}.spatial-summary-card:nth-child(4){animation-delay:165ms}.spatial-summary-card>span{color:#607970;font-size:calc(11px * var(--type-scale, 1));font-weight:650;letter-spacing:.035em;text-transform:uppercase;line-height:1.35}.spatial-summary-card>strong{color:var(--navy);font-family:var(--font-display);font-size:calc(clamp(28px,2.8vw,38px) * var(--type-scale, 1));font-weight:540;letter-spacing:-.045em;line-height:.96;font-variant-numeric:tabular-nums}.spatial-summary-card>small{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.4}.spatial-summary-card-covered{border-top:3px solid var(--teal);background:#eef8f4}.spatial-summary-card-assets{border-top:3px solid var(--blue);background:#f0f6f9}.spatial-summary-card-empty{border-top:3px solid var(--gold);background:#fcf7eb}.spatial-summary-card-link{border-top:3px solid var(--orange);background:#fdf3ef}.spatial-summary-card-link>strong{color:#9a4c36;font-size:calc(clamp(22px,2.5vw,32px) * var(--type-scale, 1))}.spatial-analytics-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(310px,.7fr);gap:14px;margin-bottom:14px}.spatial-chart-panel,.spatial-ranking-panel,.spatial-map-panel{min-width:0;padding:18px;border:1px solid #d4e0d9;border-radius:8px;background:#fbfcf9}.spatial-chart-panel{border-top:3px solid var(--teal)}.spatial-chart-legend{display:flex;flex-wrap:wrap;gap:8px 13px;margin:0 0 4px;color:#5d766d;font-size:calc(11px * var(--type-scale, 1));font-weight:600}.spatial-chart-legend span{display:inline-flex;align-items:center;gap:6px}.spatial-chart-legend i{display:inline-block;width:9px;height:9px;border-radius:50%}.spatial-chart-frame{margin:8px -2px -8px -8px}.spatial-ranking-panel{display:flex;flex-direction:column;border-top:3px solid var(--gold);background:linear-gradient(180deg,#fffdf7,#f6f7f1)}.spatial-ranking-panel .panel-head svg{color:#9e6b1e}.spatial-ranking-list{display:grid;gap:1px;margin:0;padding:0;list-style:none;border:1px solid #e0e8e2;border-radius:7px;background:#e0e8e2;overflow:hidden}.spatial-ranking-list li{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:9px;min-width:0;padding:9px 8px 9px 10px;background:#fffef9f0}.spatial-rank{color:#8b6b30;font:600 calc(11px * var(--type-scale, 1))/1 var(--font-mono)}.spatial-ranking-list li>div{display:grid;gap:4px;min-width:0}.spatial-ranking-list strong{overflow:hidden;color:#31584c;font-size:calc(12px * var(--type-scale, 1));text-overflow:ellipsis;white-space:nowrap}.spatial-ranking-list small{overflow:hidden;color:#71857d;font-size:calc(10px * var(--type-scale, 1));line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.spatial-ranking-list b{align-self:center;color:#0d7169;font-family:var(--font-display);font-size:calc(25px * var(--type-scale, 1));font-weight:540;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.spatial-ranking-map{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:58px;min-height:44px;padding:0 8px;color:#285f55;border:1px solid #b9d2c9;border-radius:6px;background:#f8fcf9;cursor:pointer;font-size:calc(11px * var(--type-scale, 1));font-weight:700}.spatial-ranking-map:hover{color:#075f59;border-color:#68a492;background:#eaf6f1}.spatial-ranking-map:focus-visible{outline:3px solid rgba(8,126,120,.24);outline-offset:1px}.spatial-count-track{display:block;height:4px;overflow:hidden;border-radius:999px;background:#dce8e1}.spatial-count-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#118a7d,#58b89e);transform-origin:left;animation:spatial-count-grow .68s var(--ease-out) both}.spatial-ranking-foot{display:grid;gap:4px;margin-top:auto;padding:13px 1px 0;color:#6b7f77;border-top:1px solid #dde6df;font-size:calc(11px * var(--type-scale, 1));line-height:1.5}.spatial-ranking-foot strong{color:#8d5930}.spatial-map-panel{border-top:3px solid var(--blue);margin-bottom:14px}.spatial-map-panel .map-wrap{min-height:460px}.spatial-data-details{margin-top:2px}[data-table=spatial-distribution]{min-width:900px}[data-table=spatial-distribution] :is(th,td):not(:first-child){text-align:right}.network-source-note{margin-bottom:16px}.network-metric-panel{min-width:0;margin-bottom:14px;padding:18px;border:1px solid #d4e0dc;border-top:3px solid #187870;border-radius:8px;background:#fbfcfa}.network-metric-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}.network-metric-options button{display:grid;align-content:start;gap:5px;min-height:76px;padding:12px;color:#647a72;border:1px solid #d3dfda;border-radius:7px;background:#f5f8f5;text-align:left;transition:border-color .16s var(--ease-out),background .16s var(--ease-out),transform .16s var(--ease-out)}.network-metric-options button strong{color:#31594d;font-size:calc(12px * var(--type-scale, 1))}.network-metric-options button span{font-size:calc(11px * var(--type-scale, 1));line-height:1.45}.network-metric-options button.active{color:#d8ebe5;border-color:#146f66;background:#125e58;box-shadow:inset 0 3px #68c2aa}.network-metric-options button.active strong{color:#fffdf7}.network-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}.network-summary-card{position:relative;display:grid;align-content:start;gap:7px;min-width:0;min-height:132px;padding:15px;overflow:hidden;border:1px solid #d7e3df;border-radius:8px;background:#f8faf8;animation:spatial-reveal .42s var(--ease-out) both}.network-summary-card:nth-child(2){animation-delay:55ms}.network-summary-card:nth-child(3){animation-delay:.11s}.network-summary-card:nth-child(4){animation-delay:165ms}.network-summary-card>span{max-width:calc(100% - 28px);color:#607970;font-size:calc(11px * var(--type-scale, 1));font-weight:650;letter-spacing:.035em;line-height:1.35;text-transform:uppercase}.network-summary-card>strong{color:var(--navy);font-family:var(--font-display);font-size:calc(clamp(29px,2.9vw,40px) * var(--type-scale, 1));font-weight:540;font-variant-numeric:tabular-nums;letter-spacing:-.05em;line-height:.95}.network-summary-card>small{max-width:190px;color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.4}.network-summary-card>svg{position:absolute;top:14px;right:14px;opacity:.72}.network-summary-roads{border-top:3px solid #bb623d;background:#fdf3ef}.network-summary-roads>svg{color:#a55338}.network-summary-drainage{border-top:3px solid #2d78b0;background:#eef6fa}.network-summary-drainage>svg{color:#2d78b0}.network-summary-total{border-top:3px solid #187870;background:#edf8f4}.network-summary-link{border-top:3px solid #b79445;background:#fcf7ea}.network-summary-link>svg{color:#987330}.network-breakdown-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.network-breakdown-card,.network-chart-panel,.network-ranking-panel,.network-map-panel,.network-detail-panel{min-width:0;padding:18px;border:1px solid #d4e0dc;border-radius:8px;background:#fbfcfa}.network-breakdown-card:first-child{border-top:3px solid #bb623d}.network-breakdown-card:last-child{border-top:3px solid #2d78b0}.network-breakdown-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.network-breakdown-head h2{margin:4px 0 0;color:var(--navy);font-family:var(--font-display);font-size:calc(21px * var(--type-scale, 1));font-weight:540;letter-spacing:-.025em}.network-breakdown-head>span{color:#768a82;font-size:calc(11px * var(--type-scale, 1));font-weight:600;white-space:nowrap}.network-donut-row{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:15px;margin-top:8px}.network-donut{position:relative;width:180px;height:180px}.network-donut-total{position:absolute;inset:0;display:grid;align-content:center;justify-items:center;pointer-events:none}.network-donut-total strong{color:var(--navy);font-family:var(--font-display);font-size:calc(25px * var(--type-scale, 1));font-weight:560;font-variant-numeric:tabular-nums;letter-spacing:-.04em;line-height:1}.network-donut-total span{margin-top:3px;color:#778a83;font-size:calc(10px * var(--type-scale, 1));font-weight:650;letter-spacing:.05em;text-transform:uppercase}.network-breakdown-list{display:grid;gap:1px;margin:0;padding:0;overflow:hidden;border:1px solid #e0e7e3;border-radius:7px;background:#e0e7e3;list-style:none}.network-breakdown-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:8px 10px;background:#fffef9}.network-breakdown-list li>span{display:inline-flex;align-items:center;gap:7px;min-width:0;color:#5c746b;font-size:calc(12px * var(--type-scale, 1))}.network-breakdown-list i{width:9px;height:9px;flex:0 0 auto;border-radius:50%}.network-breakdown-list strong{color:#31594d;font-size:calc(13px * var(--type-scale, 1));font-variant-numeric:tabular-nums}.network-analytics-grid{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(310px,.68fr);gap:14px;margin-bottom:14px}.network-chart-panel{border-top:3px solid #187870}.network-chart-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin:0 0 4px;color:#5d766d;font-size:calc(11px * var(--type-scale, 1));font-weight:600}.network-chart-legend span{display:inline-flex;align-items:center;gap:6px}.network-chart-legend i{width:10px;height:10px;border-radius:2px}.network-legend-road{background:#bb623d}.network-legend-drainage{background:#2d78b0}.network-chart-frame{margin:8px -2px -8px -8px}.network-ranking-panel{display:flex;flex-direction:column;border-top:3px solid #b79445;background:linear-gradient(180deg,#fffdf7,#f5f7f3)}.network-ranking-panel .panel-head svg{color:#987330}.network-ranking-list{display:grid;gap:1px;margin:0;padding:0;overflow:hidden;border:1px solid #e0e8e2;border-radius:7px;background:#e0e8e2;list-style:none}.network-ranking-list li{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:9px;min-width:0;padding:9px 8px 9px 10px;background:#fffef9f0}.network-rank{color:#8b6b30;font:600 calc(11px * var(--type-scale, 1))/1 var(--font-mono)}.network-ranking-list li>div{display:grid;gap:4px;min-width:0}.network-ranking-list strong{overflow:hidden;color:#31584c;font-size:calc(12px * var(--type-scale, 1));text-overflow:ellipsis;white-space:nowrap}.network-ranking-list small{overflow:hidden;color:#71857d;font-size:calc(10px * var(--type-scale, 1));line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.network-ranking-list b{align-self:center;color:#155b89;font-family:var(--font-display);font-size:calc(21px * var(--type-scale, 1));font-weight:540;font-variant-numeric:tabular-nums;letter-spacing:-.04em;white-space:nowrap}.network-ranking-map{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:58px;min-height:44px;padding:0 8px;color:#285f55;border:1px solid #b9d2c9;border-radius:6px;background:#f8fcf9;cursor:pointer;font-size:calc(11px * var(--type-scale, 1));font-weight:700}.network-ranking-map:hover{color:#075f59;border-color:#68a492;background:#eaf6f1}.network-ranking-map:focus-visible{outline:3px solid rgba(8,126,120,.24);outline-offset:1px}.network-count-track{display:block;height:4px;overflow:hidden;border-radius:999px;background:#dce8e4}.network-count-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#bb623d,#2d78b0);transform-origin:left;animation:spatial-count-grow .68s var(--ease-out) both}.network-map-panel{border-top:3px solid #2d78b0;margin-bottom:14px}.network-map-panel .map-wrap{min-height:480px}.network-detail-panel{border-top:3px solid #187870}.network-detail-panel>.panel-head>span{color:#71857d;font-size:calc(11px * var(--type-scale, 1));font-weight:600}.network-table-map{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:58px;min-height:44px;padding:0 8px;color:#285f55;border:1px solid #b9d2c9;border-radius:6px;background:#f8fcf9;cursor:pointer;font-size:calc(11px * var(--type-scale, 1));font-weight:700}.network-table-map:hover{color:#075f59;border-color:#68a492;background:#eaf6f1}.network-table-map:focus-visible{outline:3px solid rgba(8,126,120,.24);outline-offset:1px}[data-table=network-distribution]{min-width:760px}[data-table=network-distribution] :is(th,td):not(:first-child){text-align:right}.urban-form-source-note{margin-bottom:16px}.urban-form-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}.urban-form-summary-card{position:relative;display:grid;align-content:start;gap:7px;min-width:0;min-height:132px;padding:15px;overflow:hidden;border:1px solid #d7e3df;border-top:3px solid #187870;border-radius:8px;background:#f1f8f5;animation:spatial-reveal .42s var(--ease-out) both}.urban-form-summary-card:nth-child(2){border-top-color:#507e9d;background:#f1f6f8;animation-delay:55ms}.urban-form-summary-card:nth-child(3){border-top-color:#7c8e55;background:#f5f7ef;animation-delay:.11s}.urban-form-summary-card:nth-child(4){animation-delay:165ms}.urban-form-summary-card>svg{position:absolute;top:14px;right:14px;color:#267f72;opacity:.74}.urban-form-summary-card>span{max-width:calc(100% - 28px);color:#607970;font-size:calc(11px * var(--type-scale, 1));font-weight:650;letter-spacing:.035em;line-height:1.35;text-transform:uppercase}.urban-form-summary-card>strong{color:var(--navy);font-family:var(--font-display);font-size:calc(clamp(29px,2.9vw,40px) * var(--type-scale, 1));font-weight:540;font-variant-numeric:tabular-nums;letter-spacing:-.05em;line-height:.95}.urban-form-summary-card>small{max-width:210px;color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.4}.urban-form-summary-warning{border-top-color:#b25a42;background:#fdf2ed}.urban-form-summary-warning>svg,.urban-form-summary-warning>strong{color:#a34d38}.urban-form-metric-panel,.urban-form-chart-panel,.urban-form-coverage-panel,.urban-form-map-panel,.urban-form-detail-panel{min-width:0;padding:18px;border:1px solid #d4e0dc;border-radius:8px;background:#fbfcfa}.urban-form-metric-panel{margin-bottom:14px;border-top:3px solid #187870}.urban-form-metric-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:13px}.urban-form-metric-options button{display:grid;align-content:start;gap:5px;min-height:88px;padding:12px;color:#647a72;border:1px solid #d3dfda;border-radius:7px;background:#f5f8f5;text-align:left;transition:border-color .16s var(--ease-out),background .16s var(--ease-out),transform .16s var(--ease-out)}.urban-form-metric-options button strong{color:#31594d;font-size:calc(12px * var(--type-scale, 1))}.urban-form-metric-options button span{font-size:calc(11px * var(--type-scale, 1));line-height:1.45}.urban-form-metric-options button.active{color:#d8ebe5;border-color:#146f66;background:#125e58;box-shadow:inset 0 3px #68c2aa}.urban-form-metric-options button.active strong{color:#fffdf7}.urban-form-analytics-grid{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(310px,.68fr);gap:14px;margin-bottom:14px}.urban-form-chart-panel{border-top:3px solid #187870}.urban-form-chart-panel>.panel-head>span,.urban-form-detail-panel>.panel-head>span{color:#71857d;font-size:calc(11px * var(--type-scale, 1));font-weight:600}.urban-form-chart-frame{margin:8px -3px -8px -8px}.urban-form-ranking-block{margin-top:14px;padding-top:13px;border-top:1px solid #dce7e2}.urban-form-ranking-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.urban-form-ranking-head strong{color:#31594d;font-size:calc(12px * var(--type-scale, 1))}.urban-form-ranking-head>span{color:#71857d;font-size:calc(11px * var(--type-scale, 1));font-weight:600}.urban-form-ranking-list{display:grid;gap:1px;margin:0;padding:0;overflow:hidden;border:1px solid #dce7e2;border-radius:7px;background:#dce7e2;list-style:none}.urban-form-ranking-list li{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:9px;min-width:0;padding:8px 8px 8px 10px;background:#fffef9f0}.urban-form-rank{color:#8b6b30;font:600 calc(11px * var(--type-scale, 1))/1 var(--font-mono)}.urban-form-ranking-list li>div{display:grid;gap:3px;min-width:0}.urban-form-ranking-list strong{overflow:hidden;color:#31584c;font-size:calc(12px * var(--type-scale, 1));text-overflow:ellipsis;white-space:nowrap}.urban-form-ranking-list small{overflow:hidden;color:#71857d;font-size:calc(10px * var(--type-scale, 1));line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.urban-form-ranking-list b{color:#187870;font-family:var(--font-display);font-size:calc(20px * var(--type-scale, 1));font-weight:540;letter-spacing:-.04em;white-space:nowrap}.urban-form-ranking-map{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:58px;min-height:44px;padding:0 8px;color:#285f55;border:1px solid #b9d2c9;border-radius:6px;background:#f8fcf9;cursor:pointer;font-size:calc(11px * var(--type-scale, 1));font-weight:700}.urban-form-ranking-map:hover{color:#075f59;border-color:#68a492;background:#eaf6f1}.urban-form-ranking-map:focus-visible{outline:3px solid rgba(8,126,120,.24);outline-offset:1px}.urban-form-coverage-panel{border-top:3px solid #987330;background:linear-gradient(180deg,#fffdf7,#f6f8f4)}.urban-coverage-lanes{display:grid;gap:12px;margin-top:12px}.urban-coverage-lane{display:grid;gap:7px}.urban-coverage-lane>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.urban-coverage-lane strong{color:#355b50;font-size:calc(12px * var(--type-scale, 1))}.urban-coverage-lane span{color:#72867e;font-size:calc(11px * var(--type-scale, 1))}.urban-coverage-track{display:block;height:7px;overflow:hidden;border-radius:999px;background:#dfe7e2}.urban-coverage-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#187870,#61b79e);transform-origin:left;animation:spatial-count-grow .68s var(--ease-out) both}.urban-form-conflict-list{display:grid;gap:1px;margin-top:20px;overflow:hidden;border:1px solid #ead7cf;border-radius:7px;background:#ead7cf}.urban-form-conflict-list>strong{padding:10px;color:#8e4937;background:#f8eae4;font-size:calc(11px * var(--type-scale, 1));letter-spacing:.04em;text-transform:uppercase}.urban-form-conflict-list>span{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:39px;padding:8px 10px;color:#5b6f67;background:#fffdf8;font-size:calc(11px * var(--type-scale, 1))}.urban-form-conflict-list b{color:#a34d38;font-variant-numeric:tabular-nums}.urban-form-map-panel{margin-bottom:14px;border-top:3px solid #507e9d}.urban-form-map-panel .map-wrap{min-height:500px}.urban-form-detail-panel{border-top:3px solid #187870}[data-table=urban-form]{min-width:880px}[data-table=urban-form] :is(th,td):not(:first-child){text-align:right}.urban-form-conflict-cell{color:#9f4d3a;background:#fdf2ed;font-weight:650}.urban-form-conflict-cell span{display:block;color:#a35643!important;font-size:calc(10px * var(--type-scale, 1))!important}.chart-panel{display:flex;flex-direction:column}.chart-unit{color:var(--muted);font-size:calc(12px * var(--type-scale, 1));font-weight:600}.chart-year-picker{margin-top:12px;padding:11px 12px 12px;border:1px solid #dce7df;border-radius:7px;background:#f7faf6}.chart-year-picker-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.chart-year-picker-head strong{color:#31594d;font-size:calc(12px * var(--type-scale, 1));font-weight:650}.chart-year-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:9px}.chart-year-option{display:grid;gap:3px;min-width:0;min-height:64px;padding:8px 9px;color:#526b62;border:1px solid #d4dfd8;border-radius:6px;background:#fffef9;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.chart-year-option:hover{border-color:#79a59a;background:#f7fcf9}.chart-year-option:focus-visible{outline:3px solid rgba(8,126,120,.24);outline-offset:2px}.chart-year-option.selected{border-color:#087e78;background:#eaf7f3;box-shadow:inset 0 0 0 1px #087e78}.chart-year-option>span{color:#087e78;font:700 calc(12px * var(--type-scale, 1))/1 var(--font-mono)}.chart-year-option strong{color:#284f45;font-size:calc(12px * var(--type-scale, 1));line-height:1.2}.chart-year-option small{color:#71857c;font-size:calc(10px * var(--type-scale, 1));line-height:1.25}.chart-frame{height:290px;margin:10px -7px 0}.chart-data-details{margin-top:5px;border-top:1px solid #e4ece6}.chart-data-details summary{display:flex;align-items:center;min-height:44px;color:#315b4f;cursor:pointer;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.chart-data-details .table-wrap{max-height:190px}.operational-trend-details{margin-top:5px}.operational-trend-details .table-wrap{max-height:230px}[data-table=operational-daily-trend]{min-width:760px}[data-table=operational-daily-trend] :is(th,td):not(:first-child){text-align:right}.chart-legend{display:flex;gap:16px;margin-top:7px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1))}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.legend-line{display:inline-block;width:18px;height:2px;background:var(--teal)}.legend-line.capacity{border-top:2px dashed #91a79e;background:transparent}.chart-gap-positive{color:#a54e3b;font-weight:700}.chart-gap-negative{color:#0b7069;font-weight:700}.chart-callout{display:grid;gap:4px;margin-top:auto;padding:12px;border-top:1px solid #e4ece6}.chart-callout strong{color:#365e52;font-size:calc(12px * var(--type-scale, 1))}.chart-callout span{color:var(--muted);font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.table-wrap{overflow-x:auto;scrollbar-gutter:stable}.data-register-scroll{max-height:min(62svh,620px);overflow:auto;overscroll-behavior:contain;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.data-register-scroll:focus-visible{outline:3px solid rgba(8,126,120,.24);outline-offset:2px}.table-scroll-hint{display:none;margin:-3px 0 8px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1))}table{width:100%;border-collapse:collapse;font-size:calc(13px * var(--type-scale, 1))}th{position:sticky;top:0;z-index:1;padding:11px 9px;color:#5f746c;border-bottom:1px solid var(--line-strong);background:var(--card-strong);font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.07em;text-align:left;text-transform:uppercase;white-space:nowrap}td{height:44px;padding:11px 9px;color:#536b62;border-bottom:1px solid #e1e7e3;white-space:nowrap}tbody tr:last-child td{border-bottom:0}td:first-child{display:grid;gap:3px}td strong{color:#31594d;font-size:calc(13px * var(--type-scale, 1));font-weight:600}td span:not(.status-chip){color:#778b82;font-size:calc(12px * var(--type-scale, 1))}.metric-cell{position:relative;display:flex;min-width:78px;align-items:center;justify-content:flex-end;padding:5px 0 8px}.metric-cell>span{position:relative;z-index:1;color:#31594d!important;font-weight:600}.metric-cell>i{position:absolute;right:0;bottom:3px;left:0;height:3px;border-radius:99px;background:#dfe9e3}.metric-cell>i:after{display:block;width:100%;height:100%;border-radius:inherit;background:currentColor;content:""}.metric-cell-water>i{color:#17877d}.metric-cell-sewerage>i{color:#b9634e}[data-table=population-horizons] .metric-cell>i{opacity:.82}.empty-table-cell{display:table-cell!important;color:var(--muted);text-align:center!important;white-space:normal}.status-chip{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:2px 8px;border-radius:999px;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.status-chip:before{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:currentColor;content:"";opacity:.72}.status-chip.critical{color:#943c28;background:var(--orange-soft)}.status-chip.watch{color:#825816;background:var(--gold-soft)}.status-chip.stable{color:#256a53;background:#e1f1e8}.workspace-view{min-height:0}.plain-language-view{display:grid;align-content:start;gap:18px}.plain-language-view .workspace-title-row{margin-bottom:0}.plain-language-intro{display:flex;align-items:center;gap:13px;padding:15px 16px;color:#31584c;border:1px solid #c7ddd4;border-radius:8px;background:linear-gradient(110deg,#e8f6f0,#f6f2df)}.plain-language-intro>svg{flex:0 0 auto;color:var(--teal-deep)}.plain-language-intro>div{display:grid;gap:3px}.plain-language-intro strong{color:var(--navy);font-size:calc(14px * var(--type-scale, 1))}.plain-language-intro span{color:#60776d;font-size:calc(12px * var(--type-scale, 1));line-height:1.45}.plain-language-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px}.plain-language-group{min-width:0;overflow:hidden;border:1px solid #d9e5df;border-top:4px solid var(--teal);border-radius:8px;background:#fbfcf8}.plain-language-group.maps-files{border-top-color:var(--blue);background:#f7fafc}.plain-language-group.status-words{border-top-color:var(--gold);background:#fffaf0}.plain-language-group-head{display:flex;align-items:center;gap:9px;padding:14px 15px 12px;color:var(--teal-deep)}.plain-language-group.maps-files .plain-language-group-head{color:#3e7898}.plain-language-group.status-words .plain-language-group-head{color:#96681d}.plain-language-group-head h2{margin:0;color:var(--navy);font:600 calc(17px * var(--type-scale, 1))/1.2 var(--font-display);letter-spacing:-.02em}.plain-language-group dl{display:grid;margin:0}.plain-language-group dl>div{display:grid;gap:4px;padding:12px 15px;border-top:1px solid #e2eae5}.plain-language-group dt{color:#31584c;font-size:calc(12px * var(--type-scale, 1));font-weight:700}.plain-language-group dd{margin:0;color:var(--muted);font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.plain-language-boundary{padding:15px 16px;color:#765044;border:1px solid #e5c9bf;border-left:4px solid var(--clay);border-radius:8px;background:#fbf1ec}.plain-language-boundary strong{color:#6b4035;font-size:calc(13px * var(--type-scale, 1))}.plain-language-boundary p{max-width:86ch;margin:5px 0 0;font-size:calc(12px * var(--type-scale, 1));line-height:1.55}.audit-intake-details{margin-top:16px;border-top:1px solid #e4ece6}.audit-intake-details summary{display:flex;align-items:center;min-height:44px;color:var(--teal-deep);cursor:pointer;font-size:calc(12px * var(--type-scale, 1));font-weight:600;list-style-position:inside}.audit-intake-details summary::marker{color:#7c998d}.audit-layer-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 28px;margin:0;padding:4px 0 0 18px;color:#60776d;font-family:var(--font-mono);font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.audit-layer-list li::marker{color:#82a093}.scenario-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(230px,.8fr);gap:13px;margin-bottom:24px}.scenario-controls{display:grid;gap:20px;padding:18px;border:1px solid #cedbd4;border-radius:8px;background:#f3f6f1}.scenario-field{display:grid;gap:10px;color:#3c6155;font-size:calc(13px * var(--type-scale, 1));font-weight:600}.scenario-field>span{display:flex;align-items:center;justify-content:space-between;gap:12px}.scenario-field strong{color:var(--teal-deep);font-size:calc(13px * var(--type-scale, 1))}.scenario-field input{width:100%;min-height:44px;accent-color:var(--teal);cursor:pointer}.scenario-result{display:grid;align-content:center;gap:9px;min-height:180px;padding:20px;color:#e9f5f0;border:1px solid var(--navy);border-radius:8px;background:var(--navy);box-shadow:inset 0 4px #5fc4b1}.scenario-result .panel-kicker{color:#7fd0be}.scenario-result>strong{color:#fff8e9;font-family:var(--font-display);font-size:calc(40px * var(--type-scale, 1));font-weight:520;letter-spacing:-.05em}.scenario-result>span:not(.panel-kicker){color:#b1c7bf;font-size:calc(13px * var(--type-scale, 1))}.audit-list{display:grid;border-top:1px solid var(--line)}.audit-intake-panel{margin-bottom:20px;padding:16px;border:1px solid #dce7e0;border-radius:8px;background:#f4f8f5}.audit-intake-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.audit-intake-head>div{display:grid;gap:4px}.audit-intake-head h2{margin:0;color:#173e36;font-size:calc(22px * var(--type-scale, 1))}.audit-intake-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:13px}.audit-intake-card{display:grid;align-content:start;gap:7px;min-width:0;padding:12px;border:1px solid #dce6e0;border-radius:7px;background:#fffefa}.audit-intake-card>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.audit-file-type{color:#527268;font-family:var(--font-mono);font-size:calc(11px * var(--type-scale, 1));font-weight:700;letter-spacing:.08em}.audit-intake-card strong{color:#31584c;font-size:calc(13px * var(--type-scale, 1))}.audit-intake-card>span{overflow-wrap:anywhere;color:#49665c;font-family:var(--font-mono);font-size:calc(11px * var(--type-scale, 1));line-height:1.45}.audit-intake-card small{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.45}.audit-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #edf1ee}.audit-row>div{display:grid;gap:4px;min-width:0}.audit-row strong{color:#31584c;font-size:calc(13px * var(--type-scale, 1));font-weight:600}.audit-row span:not(.status-chip){color:var(--muted);font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.audit-assumptions{display:grid;gap:5px;margin-top:22px;padding:14px;border:1px solid #e1eae4;border-radius:7px;background:#f8fbf9}.audit-assumptions strong{color:#355d4e;font-size:calc(13px * var(--type-scale, 1))}.audit-assumptions>span:last-child{color:var(--muted);font-size:calc(12px * var(--type-scale, 1))}.audit-page-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:16px}.audit-page-menu a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;min-height:54px;padding:0 13px;color:#315f75;border:1px solid #d5e5ec;border-radius:7px;background:#f0f7fa;font-size:calc(12px * var(--type-scale, 1));font-weight:650;text-decoration:none}.audit-page-menu a.needed{color:#8a5b19;border-color:#eadbb8;background:#fff8e8}.audit-page-menu a svg{color:currentColor}.audit-page-menu a strong{display:grid;width:27px;height:27px;place-items:center;color:#fff;border-radius:50%;background:#3e7898;font:700 calc(11px * var(--type-scale, 1))/1 var(--font-mono)}.audit-page-menu a.needed strong{background:#b47b21}.audit-intake-panel,.handoff-kit-panel{scroll-margin-top:84px}.audit-request-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding:14px;border-left:3px solid var(--teal);border-top:1px solid #dce8e0;border-right:1px solid #dce8e0;border-bottom:1px solid #dce8e0;border-radius:7px;background:#eef6f1}.audit-request-message{display:grid;gap:5px;min-width:0}.audit-request-panel strong{color:#31584c;font-size:calc(13px * var(--type-scale, 1))}.audit-request-message>span:last-child{color:var(--muted);font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.audit-request-actions{display:flex;align-items:center;flex:0 0 auto;flex-wrap:wrap;gap:8px}.handoff-kit-panel{margin-top:22px;padding:16px;border:1px solid #d7e5df;border-radius:8px;background:linear-gradient(135deg,#f3faf6,#fbf8ee)}.handoff-kit-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.handoff-kit-head>div:first-child{display:grid;gap:5px}.handoff-kit-head h2{margin:0;color:var(--navy);font:560 calc(20px * var(--type-scale, 1))/1.2 var(--font-display);letter-spacing:-.02em}.handoff-kit-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.handoff-template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.handoff-template-card{--handoff-accent: var(--blue);display:grid;grid-template-rows:auto auto 1fr auto;min-width:0;gap:9px;padding:13px;border:1px solid #dce7e2;border-top:3px solid var(--handoff-accent);border-radius:7px;background:#fffffce6}.handoff-template-card.missing{--handoff-accent: var(--clay);background:#fffaf6}.handoff-template-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.handoff-template-number{color:var(--handoff-accent);font:700 calc(11px * var(--type-scale, 1))/1 var(--font-mono);letter-spacing:.08em}.handoff-template-card h3{margin:0;color:#31584c;font:600 calc(16px * var(--type-scale, 1))/1.2 var(--font-display);letter-spacing:-.01em}.handoff-template-card p{margin:0;color:var(--muted);font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.handoff-template-actions{display:grid;align-items:end;gap:8px;padding-top:3px}.handoff-template-actions>span{color:#70847b;font-size:calc(11px * var(--type-scale, 1));font-weight:600}.handoff-template-actions .button{width:100%}.handoff-checker{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(0,1.2fr);align-items:end;gap:12px 18px;margin-top:16px;padding-top:16px;border-top:1px solid #d8e5df}.handoff-checker-head{display:grid;gap:5px}.handoff-checker-head h3{margin:0;color:var(--navy);font:560 calc(18px * var(--type-scale, 1))/1.2 var(--font-display);letter-spacing:-.02em}.handoff-check-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px}.handoff-check-controls label{display:grid;gap:5px;min-width:0;color:#60776d;font-size:calc(11px * var(--type-scale, 1));font-weight:650}.handoff-check-controls select{width:100%;min-height:44px;padding:0 36px 0 12px;color:var(--ink);border:1px solid #cfded7;border-radius:6px;background-color:#fff;font:500 calc(13px * var(--type-scale, 1))/1 var(--font-ui)}.handoff-check-result{grid-column:1 / -1;display:grid;grid-template-columns:auto 1fr;gap:11px;padding:13px 14px;color:#7c5144;border:1px solid #e5c9bf;border-radius:7px;background:#fff6f1}.handoff-check-result.match{color:#2f6d59;border-color:#c6dfd4;background:#edf8f2}.handoff-check-result>svg{margin-top:1px;color:currentColor}.handoff-check-result>div{display:grid;gap:4px;min-width:0}.handoff-check-result strong{color:currentColor;font-size:calc(13px * var(--type-scale, 1))}.handoff-check-result span,.handoff-check-result p,.handoff-check-result small{overflow-wrap:anywhere;color:#667b72;font-size:calc(11px * var(--type-scale, 1));line-height:1.45}.handoff-check-result p{margin:2px 0 0}.handoff-check-result b{color:currentColor}.handoff-check-result small{margin-top:3px;color:#765d55}.handoff-check-result.match small{color:#5f756c}.audit-contract-panel{margin-top:22px;border-top:1px solid #dfe8e2}.audit-contract-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0 11px}.audit-contract-head>div{display:grid;gap:5px}.audit-contract-head strong{color:#31584c;font-family:var(--font-display);font-size:calc(20px * var(--type-scale, 1));font-weight:560}[data-table=data-contract]{min-width:920px}[data-table=data-contract] th:nth-child(2),[data-table=data-contract] td:nth-child(2){width:110px}[data-table=data-contract] td{white-space:normal;vertical-align:top;line-height:1.45}[data-table=data-contract] td:first-child{white-space:nowrap}[data-table=data-contract] td:nth-child(3){min-width:260px;color:#60776d}[data-table=data-contract] td:nth-child(4){min-width:320px;color:#6e8279;font-family:var(--font-mono);font-size:calc(11px * var(--type-scale, 1))}.status-chip.confirmed{color:#28715a;background:#e9f7ee}.status-chip.pending{color:#93671d;background:#fff8e8}.status-chip.candidate{color:#42678a;background:#edf4fb}.toast{position:fixed;right:24px;bottom:24px;z-index:30;display:flex;align-items:center;gap:10px;max-width:380px;padding:12px 12px 12px 14px;color:#f6fbf8;border:1px solid #356656;border-radius:8px;background:#174a3c;box-shadow:var(--shadow-md);font-size:calc(13px * var(--type-scale, 1));font-weight:500;text-align:left}.toast.attention{border-color:#806329;background:#5f4717}.toast.error{border-color:#914e4e;background:#6e2c2c}.toast>span{flex:1}.toast>button{display:grid;width:44px;height:44px;place-items:center;color:#d8ebe4;border:0;border-radius:5px;background:transparent}.action-status{display:inline-flex;align-items:center;min-height:32px;margin:-5px 0 14px;padding:6px 10px;color:#285e50;border:1px solid #b8d4c8;border-radius:6px;background:#edf7f1;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.route-loader{display:grid;min-height:100vh;min-height:100dvh;place-items:center;color:var(--muted);background:var(--paper);font-size:calc(14px * var(--type-scale, 1))}.workspace-content .route-loader{min-height:280px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(110deg,#f5f8f4 30%,#fbfcf8,#f5f8f4 66%);background-size:220% 100%;animation:workspace-loading 1.4s ease-in-out infinite}.route-error{display:grid;min-height:100vh;min-height:100dvh;place-items:center;padding:24px;color:var(--ink);background:var(--paper)}.route-error-inner{width:min(100%,560px);padding:32px;border:1px solid var(--line);border-top:4px solid var(--orange);border-radius:9px;background:var(--card-strong);box-shadow:var(--shadow-sm)}.route-error h1{margin:0;color:var(--navy);font-size:calc(clamp(34px,5vw,54px) * var(--type-scale, 1));letter-spacing:-.045em;line-height:1}.route-error-inner>p:not(.eyebrow){max-width:48ch;margin:18px 0 0;color:var(--muted);font-size:calc(14px * var(--type-scale, 1));line-height:1.6}.route-error-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);white-space:nowrap}.planning-bar{display:grid;grid-template-columns:minmax(300px,auto) minmax(310px,1fr);align-items:end;gap:18px;margin-bottom:34px}.planning-bar>div{min-width:0}.planning-bar .basis-control button{flex:1}.horizon-option{display:grid;align-content:center;gap:1px;min-width:94px;min-height:44px;padding:5px 11px}.horizon-option strong{font-size:calc(12px * var(--type-scale, 1))}.horizon-option span{font-size:calc(12px * var(--type-scale, 1));font-weight:500;opacity:.78}.basis-control{display:flex;gap:3px;padding:3px;border:1px solid #c8d4ce;border-radius:7px;background:#dde5df}.basis-control button{min-height:44px;padding:0 13px;color:#536a62;border:0;border-radius:5px;background:transparent;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.basis-control button.selected{color:#fffdf7;background:var(--navy);box-shadow:var(--shadow-sm)}.basis-control.compact{width:100%}.basis-control.compact button{flex:1}.source-banner{display:flex;align-items:center;gap:9px;min-height:42px;margin-bottom:20px;padding:9px 12px;color:#5d746b;border:1px solid #cfe0d7;border-radius:7px;background:#e8f3ed;font-size:calc(12px * var(--type-scale, 1));line-height:1.4}.source-banner strong{color:#2d594d;font-weight:600}.source-banner>span:last-child{margin-left:auto;color:#6e6250}.source-dot{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:#2f8a69}.map-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:10px 0 0;border:1px solid #e0e9e3;border-radius:6px;background:#e0e9e3;overflow:hidden}.map-facts div{display:grid;gap:4px;padding:11px;background:#f4f6f1}.map-facts dt{color:#657e74;font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:.06em;text-transform:uppercase}.map-facts dd{margin:0;color:#2d584b;font-size:calc(15px * var(--type-scale, 1));font-variant-numeric:tabular-nums;font-weight:600}.chart-legend{flex-wrap:wrap}.legend-line.water{background:var(--teal)}.legend-line.sewerage{background:var(--orange)}.legend-line.workbook{height:0;border-top:2px dashed #526b66;background:transparent}.caution-text{color:#9a5f2d!important}.source-note{display:flex;align-items:baseline;gap:9px;margin:4px 0 20px;padding:12px 13px;color:var(--muted);border-left:3px solid #6d9d8c;background:#edf3ee;font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.source-note strong{flex:0 0 auto;color:#3d6355}.table-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.table-tools>span{color:var(--muted);font-size:calc(12px * var(--type-scale, 1));font-weight:500}.table-status{display:grid;gap:2px;min-width:max-content;text-align:right}.table-status strong{color:#31594d;font-size:calc(12px * var(--type-scale, 1));font-variant-numeric:tabular-nums}.table-status span{color:var(--muted);font-size:calc(11px * var(--type-scale, 1))}.active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:-2px 0 12px}.active-filters-label{color:#70867c;font-size:calc(11px * var(--type-scale, 1));font-weight:600;letter-spacing:.07em;text-transform:uppercase}.filter-chip{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 12px;color:#236b61;border:1px solid #a9d0c2;border-radius:999px;background:#e8f5ef;font-size:calc(12px * var(--type-scale, 1));font-weight:600}.filter-chip svg{flex:0 0 auto;color:#568b7d}.ward-brief{display:grid;grid-template-columns:minmax(130px,.75fr) minmax(330px,1.5fr) auto;align-items:center;gap:15px;margin-bottom:14px;padding:13px;border:1px solid #bcd9cf;border-left:4px solid var(--teal);border-radius:8px;background:linear-gradient(100deg,#edf8f4,#f8faf6);animation:spatial-reveal .26s var(--ease-out) both}.ward-brief-title{display:grid;gap:3px}.ward-brief-title strong{color:#193f38;font-family:var(--font-display);font-size:calc(21px * var(--type-scale, 1));font-weight:600}.ward-brief-title small{color:#6d827a;font-size:calc(11px * var(--type-scale, 1))}.ward-brief dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0}.ward-brief dl div{display:grid;gap:3px;min-width:0;padding:8px 10px;border-left:2px solid #8bbcad;background:#fffffbb3}.ward-brief dt{color:#71857d;font-size:calc(10px * var(--type-scale, 1));font-weight:650;letter-spacing:.05em;text-transform:uppercase}.ward-brief dd{margin:0;color:#225e53;font-size:calc(13px * var(--type-scale, 1));font-weight:700;font-variant-numeric:tabular-nums}.ward-brief-actions{display:grid;gap:7px}.ward-brief-actions .button{min-height:44px;white-space:nowrap}.search-field{display:flex;align-items:center;gap:8px;width:min(360px,100%);min-height:44px;padding:0 12px;color:#7b9186;border:1px solid #d8e3dc;border-radius:7px;background:#f9fbf9}.search-field:focus-within{border-color:#7ea996;box-shadow:0 0 0 3px #0f766e14}.search-field input{min-width:0;min-height:44px;flex:1;padding:0 2px;color:var(--ink);border:0;outline:0;background:transparent;font-size:calc(13px * var(--type-scale, 1))}.table-tools select{min-height:44px;padding:0 32px 0 11px;color:#3b6256;border:1px solid #cbd8d1;border-radius:7px;background:#f8f9f4;font-size:calc(13px * var(--type-scale, 1))}.filter-reset,.table-export{flex:0 0 auto;min-height:44px}.horizon-comparison{margin-top:20px;padding-top:17px;border-top:1px solid #dfe8e2}.comparison-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.comparison-heading strong{color:#31594d;font-family:var(--font-display);font-size:calc(20px * var(--type-scale, 1));font-weight:560}[data-table=population-horizons]{min-width:900px}[data-table=population-horizons] th{text-align:center}[data-table=population-horizons] thead tr:first-child th{padding-top:14px;padding-bottom:8px;font-family:var(--font-display);font-size:calc(15px * var(--type-scale, 1));letter-spacing:0;text-transform:none}[data-table=population-horizons] th:first-child,[data-table=population-horizons] td:first-child{position:sticky;left:0;z-index:2;text-align:left;background:var(--card-strong)}[data-table=population-horizons] thead tr:first-child th:first-child{z-index:3}[data-table=population-horizons] .horizon-2026{color:#0b7069;background:#edf8f5}[data-table=population-horizons] .horizon-2041{color:#8a641f;background:#fbf4e5}[data-table=population-horizons] .horizon-2056{color:#a54e3b;background:#fdf0eb}[data-table=population-horizons] .horizon-growth-heading{color:#31594d;background:#eef1ec}[data-table=population-horizons] td[data-horizon="2026"]{background:#edf8f570}[data-table=population-horizons] td[data-horizon="2041"]{background:#fbf4e570}[data-table=population-horizons] td[data-horizon="2056"]{background:#fdf0eb70}[data-table=population-horizons] td[data-measure=water],[data-table=population-horizons] td[data-measure=sewerage]{color:#31594d;font-weight:600}[data-table=population-horizons] .horizon-growth{color:#8d4636;font-weight:700}.reconciliation-note{margin-top:14px;padding:11px 12px;color:#75521e;border:1px solid #e5cf9e;border-radius:6px;background:#f8eed7;font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.asset-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}.asset-summary button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:64px;padding:0 13px;color:#536e64;border:1px solid #d1ddd6;border-radius:7px;background:#f5f6f1;text-align:left}.asset-summary button:nth-child(1){border-left:3px solid var(--teal);background:#f1f8f6}.asset-summary button:nth-child(2){border-left:3px solid var(--gold);background:#fcf8ed}.asset-summary button:nth-child(3){border-left:3px solid var(--blue);background:#f5f8fb}.asset-summary button:nth-child(4){border-left:3px solid var(--orange);background:#fdf5f1}.asset-summary button.selected{color:#244f40;border-color:#91b3a3;background:#eaf3ed}.asset-summary button span{font-size:calc(12px * var(--type-scale, 1));font-weight:600}.asset-summary button strong{color:#244f40;font-family:var(--font-display);font-size:calc(24px * var(--type-scale, 1));font-weight:540;font-variant-numeric:tabular-nums}.asset-reference-details{margin-top:16px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--card-strong)}.asset-reference-details>summary{display:flex;min-height:48px;align-items:center;padding:0 14px;color:var(--teal-deep);cursor:pointer;font-size:calc(13px * var(--type-scale, 1));font-weight:700}.asset-reference-details[open]>summary{border-bottom:1px solid var(--line)}.asset-reference-details-body{padding:14px}.asset-reference-details-body>:last-child{margin-bottom:0}[data-table=assets]{min-width:860px}[data-table=assets] th:last-child,[data-table=assets] td:last-child{position:sticky;right:0}[data-table=assets] th:last-child{z-index:3;background:var(--card-strong)}[data-table=assets] td:last-child{z-index:2;background:#fffef9;box-shadow:-7px 0 12px #25463b14}.asset-map-action{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:58px;min-height:44px;padding:0 8px;color:#285f55;border:1px solid #b9d2c9;border-radius:6px;background:#f8fcf9;cursor:pointer;font-size:calc(11px * var(--type-scale, 1));font-weight:700}.asset-map-action:hover{color:#075f59;border-color:#68a492;background:#eaf6f1}.asset-map-action:focus-visible{outline:3px solid rgba(8,126,120,.24);outline-offset:1px}.capacity-reference-panel{display:grid;gap:14px;margin-bottom:18px;padding:16px;border:1px solid #c9d9d0;border-radius:8px;background:#f1f7f2}.capacity-reference-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.capacity-reference-head h2{margin:0;color:var(--navy);font-size:calc(22px * var(--type-scale, 1));letter-spacing:-.03em}.capacity-reference-boundary{display:grid;gap:3px;padding:10px 12px;color:var(--muted);border-left:3px solid var(--gold);background:#fbf6e9;font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.capacity-reference-boundary strong{color:#6b5227}.capacity-reference-boundary small{color:var(--muted-light);font-size:calc(11px * var(--type-scale, 1))}.capacity-reference-grid,.capacity-comparison-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.capacity-reference-grid article,.capacity-comparison{display:grid;align-content:start;gap:5px;min-width:0;padding:12px;border:1px solid #d5e1d9;border-radius:6px;background:#fbfdf9}.capacity-reference-grid article>span,.capacity-comparison>span{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.35}.capacity-reference-grid article>strong,.capacity-comparison>strong{color:var(--navy);font-family:var(--font-display);font-size:calc(22px * var(--type-scale, 1));font-weight:540;letter-spacing:-.035em;line-height:1}.capacity-reference-grid article>small,.capacity-comparison>small{color:var(--muted-light);font-size:calc(10px * var(--type-scale, 1));line-height:1.35}.capacity-comparison{border-left:3px solid var(--teal);background:#eaf5ef}.capacity-comparison-caution{border-left-color:var(--orange);background:#fbf0e9}.capacity-comparison-caution>strong{color:#8e452e}.regulatory-sewage-panel{display:grid;gap:14px;margin-bottom:18px;padding:16px;border:1px solid #c9d8dd;border-radius:8px;background:#f2f7f8}.regulatory-sewage-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.regulatory-sewage-grid article{display:grid;align-content:start;gap:6px;min-width:0;padding:12px;border:1px solid #d6e0e2;border-top:3px solid #507e9d;border-radius:6px;background:#fbfdfc;animation:spatial-reveal .42s var(--ease-out) both}.regulatory-sewage-grid article:nth-child(2){animation-delay:45ms}.regulatory-sewage-grid article:nth-child(3){animation-delay:90ms}.regulatory-sewage-grid article:nth-child(4){animation-delay:135ms}.regulatory-sewage-grid article:nth-child(5){animation-delay:.18s}.regulatory-sewage-grid span{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.35}.regulatory-sewage-grid strong{color:var(--navy);font-family:var(--font-display);font-size:calc(22px * var(--type-scale, 1));font-weight:540;font-variant-numeric:tabular-nums;letter-spacing:-.035em;line-height:1}.regulatory-sewage-grid .regulatory-sewage-gap{border-top-color:#b25a42;background:#fdf2ed}.regulatory-sewage-grid .regulatory-sewage-gap strong{color:#9e4b38}.regulatory-balance{display:grid;gap:8px;padding:12px;border:1px solid #d9e3e4;border-radius:7px;background:#fffef9}.regulatory-balance>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:#60766e;font-size:calc(11px * var(--type-scale, 1))}.regulatory-balance strong{color:#31594d;font-variant-numeric:tabular-nums}.regulatory-balance-track,.regulatory-tender-track{position:relative;display:block;height:9px;overflow:hidden;border-radius:999px;background:#edddd7}.regulatory-balance-track i{display:block;height:100%;min-width:3px;border-radius:inherit;background:#187870;transform-origin:left;animation:spatial-count-grow .76s var(--ease-out) both}.regulatory-tender-track{overflow:visible;background:linear-gradient(90deg,#4c9e88 0%,#4c9e88 var(--generation-marker),#dce7e2 var(--generation-marker),#dce7e2 100%)}.regulatory-tender-track:before{position:absolute;top:-3px;bottom:-3px;left:0;width:100%;border:1px solid #afc5bd;border-radius:inherit;content:""}.regulatory-tender-track i{position:absolute;top:-5px;bottom:-5px;width:2px;background:#9e4b38;box-shadow:0 0 0 2px #fffef9}[data-table=regulatory-stps]{min-width:940px}[data-table=regulatory-stps] :is(th,td):not(:first-child){text-align:right}.amrut-program-panel{display:grid;gap:14px;margin-bottom:18px;padding:16px;border:1px solid #c9d9d0;border-radius:8px;background:#f8f8f2}.amrut-program-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.amrut-program-head h2{margin:0;color:var(--navy);font-size:calc(22px * var(--type-scale, 1));letter-spacing:-.03em}.amrut-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.amrut-summary-grid article{display:grid;align-content:start;gap:5px;min-width:0;padding:12px;border:1px solid #d5e1d9;border-radius:6px;background:#fffdf7}.amrut-summary-grid span{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.35}.amrut-summary-grid strong{color:var(--navy);font-family:var(--font-display);font-size:calc(22px * var(--type-scale, 1));font-weight:540;letter-spacing:-.035em;line-height:1}.amrut-summary-grid small{color:var(--muted-light);font-size:calc(10px * var(--type-scale, 1));line-height:1.35}.amrut-program-note{display:grid;gap:5px}.amrut-program-links{display:flex;flex-wrap:wrap;gap:9px 16px;margin-top:3px}.amrut-program-links a{display:inline-flex;align-items:center;gap:5px;color:var(--teal-deep);font-size:calc(11px * var(--type-scale, 1));font-weight:650}[data-table=amrut-projects] th,[data-table=amrut-projects] td{min-width:120px}[data-table=amrut-projects] th:first-child,[data-table=amrut-projects] td:first-child{min-width:220px}[data-table=amrut-projects] th:nth-child(3),[data-table=amrut-projects] td:nth-child(3){min-width:300px}[data-table=amrut-projects] :is(th,td):nth-child(4),[data-table=amrut-projects] :is(th,td):nth-child(7){text-align:right}[data-table=amrut-projects] td:first-child strong{font:600 calc(10px * var(--type-scale, 1))/1.4 var(--font-mono);overflow-wrap:anywhere}.amrut-status{display:inline-flex;padding:4px 7px;border:1px solid #c9d9d0;border-radius:999px;color:#31584c;background:#eaf5ef;font-size:calc(10px * var(--type-scale, 1));font-weight:700;white-space:nowrap}.amrut-status-ongoing{color:#77511a;border-color:#e2d1a7;background:#fbf2df}.external-source-list{margin-top:18px}.external-source-list a{display:inline-flex;align-items:center;gap:4px;color:var(--teal-deep);font-weight:600}.data-state{min-height:120px;display:grid;place-items:center;gap:12px;color:var(--muted);font-size:calc(13px * var(--type-scale, 1));text-align:center}.data-state.error{color:#9b4a30}.scenario-control-group{display:grid;gap:8px;color:#3e6257;font-size:calc(13px * var(--type-scale, 1));font-weight:600}.source-scenario-result{align-content:start}.source-scenario-result dl{display:grid;gap:8px;margin:10px 0 0;padding-top:12px;border-top:1px solid #36566b}.source-scenario-result dl div{display:flex;justify-content:space-between;gap:12px}.source-scenario-result dt{color:#a9c0b8;font-size:calc(12px * var(--type-scale, 1))}.source-scenario-result dd{margin:0;color:#f5f5eb;font-size:calc(12px * var(--type-scale, 1));font-weight:600;font-variant-numeric:tabular-nums}.formula-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid #e1eae4;border-radius:7px;background:#e1eae4;overflow:hidden}.formula-grid div{display:grid;align-content:start;gap:6px;padding:14px;background:#f8faf8}.formula-grid strong{color:#31584c;font-size:calc(13px * var(--type-scale, 1))}.formula-grid span{color:#5f756d;font-family:var(--font-mono);font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.standards-reference-panel{display:grid;gap:14px;margin-top:18px;padding:16px;border:1px solid #c9d9d0;border-radius:8px;background:#f1f7f2}.standards-reference-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.standards-reference-head h2{margin:0;color:var(--navy);font-size:calc(22px * var(--type-scale, 1));letter-spacing:-.03em}.standards-reference-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px 14px}.standards-reference-links a{display:inline-flex;align-items:center;gap:5px;color:var(--teal-deep);font-size:calc(11px * var(--type-scale, 1));font-weight:650}.standards-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.standards-summary-grid article{display:grid;align-content:start;gap:5px;min-width:0;padding:12px;border:1px solid #d5e1d9;border-radius:6px;background:#fffdf7}.standards-summary-grid span{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.35}.standards-summary-grid strong{color:var(--navy);font-family:var(--font-display);font-size:calc(22px * var(--type-scale, 1));font-weight:540;letter-spacing:-.035em;line-height:1}.standards-summary-grid small{color:var(--muted-light);font-size:calc(10px * var(--type-scale, 1));line-height:1.35}.standards-rule-list{display:grid;gap:1px;border:1px solid #dfe9e2;border-radius:7px;background:#dfe9e2;overflow:hidden}.standards-rule-list>div{display:grid;gap:5px;padding:11px 12px;background:#f8faf8}.standards-rule-list>div>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.standards-rule-list strong{color:#31584c;font-size:calc(12px * var(--type-scale, 1))}.standards-rule-list span{color:var(--teal-deep);font-size:calc(11px * var(--type-scale, 1));font-weight:650;text-align:right}.standards-rule-list small{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.5}.standards-boundary-note{display:grid;gap:5px}.source-file-list{border-top:0}.source-file-list .audit-row:first-child{border-top:1px solid var(--line)}.source-file-list .audit-row>div span:first-of-type{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.quality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}.quality-grid article{min-width:0;padding:14px;border:1px solid #e0e9e3;border-radius:7px;background:#f8faf8}.quality-grid article>div{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}.quality-grid strong{color:#31584c;font-size:calc(13px * var(--type-scale, 1))}.quality-grid p{margin:9px 0 0;color:var(--muted);font-size:calc(12px * var(--type-scale, 1));line-height:1.55}[data-table=population] :is(th,td):is(:nth-child(2),:nth-child(3),:nth-child(4),:nth-child(6),:nth-child(7)),[data-table=chart] :is(th,td):not(:first-child){text-align:right}.sidebar,.map-layer-panel{overscroll-behavior:contain}.table-wrap{overscroll-behavior-x:contain;overscroll-behavior-y:auto}.chart-data-details .table-wrap,.operational-trend-details .table-wrap{overscroll-behavior:contain}.map-wrap .maplibregl-ctrl-group{overflow:hidden;border:1px solid rgba(38,74,64,.2);border-radius:6px;background:#fffef9;box-shadow:var(--shadow-sm)}.map-wrap .maplibregl-ctrl-group button{width:44px;height:44px}.map-wrap .maplibregl-ctrl-scale{padding:1px 5px;color:#355b50;border-color:#668f82;background:#fffef9e6;font:600 calc(12px * var(--type-scale, 1))/1.4 var(--font-ui)}.app-shell{--view-accent: #2d8e83;--view-accent-alt: #557da2;--view-glow: rgba(45, 142, 131, .12);--view-wash: #edf8f4}.app-shell .sidebar{border-right:1px solid rgba(18,55,75,.28);box-shadow:inset 0 4px 0 var(--view-accent),8px 0 30px #0b253617}.app-shell .scope-card{border-left:3px solid var(--view-accent);border-radius:12px;background:linear-gradient(145deg,#143651,#123149)}.scope-card-head{display:flex;align-items:center;gap:8px}.scope-card-head>svg{color:var(--view-accent)}.app-shell .nav-item.active{border-color:#87ccbd47;background:linear-gradient(90deg,#2d7891b8,#1a4762f5);box-shadow:inset 3px 0 0 var(--view-accent),0 6px 18px #051f2f29}.nav-group-label{display:flex;align-items:center;gap:8px}.nav-group-label:before{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:var(--nav-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--nav-accent) 14%,transparent);content:""}.workspace-main{background:radial-gradient(circle at 96% 0%,var(--view-glow),transparent 30rem),linear-gradient(180deg,#fbfaf5 0%,var(--paper) 34%,#eef1eb 100%)}.workspace-header{min-height:70px;border-top:3px solid var(--view-accent);box-shadow:0 7px 22px #163a3112}.workspace-mini-brand{display:none;width:44px;height:44px;place-items:center;border:1px solid #b9d2c8;border-radius:50%;background:#fffdf8;box-shadow:0 2px 8px #0b28351f}.workspace-mini-brand img{display:block;width:32px;height:32px;object-fit:contain}.breadcrumb-current{display:inline-flex;align-items:center;gap:7px;min-height:44px;color:var(--ink-soft)}.breadcrumb-current svg{color:var(--view-accent)}.breadcrumb-current strong{font-weight:650}.workspace-content{animation:workspace-enter .36s var(--ease-out) both}.workspace-title-row:before{background:linear-gradient(180deg,var(--view-accent) 0%,var(--view-accent-alt) 100%)}.workspace-title-row .eyebrow{display:inline-flex;align-items:center;gap:8px}.workspace-title-row .eyebrow:before{width:7px;height:7px;flex:0 0 auto;border:2px solid var(--view-accent);border-radius:50%;background:var(--view-wash);box-shadow:0 0 0 3px #ffffffb3;content:""}.workspace-title-row h1{letter-spacing:-.055em}.panel{border-color:#aebfb6b8;border-radius:14px;box-shadow:0 14px 30px #17393011}.app-shell .workspace-view{border-top:3px solid var(--view-accent)}.panel-head{padding-bottom:11px;border-bottom:1px solid rgba(206,217,211,.72)}.panel-head .panel-kicker{display:inline-flex;align-items:center;gap:7px}.panel-head .panel-kicker:before{width:6px;height:6px;flex:0 0 auto;border-radius:2px;background:var(--view-accent);content:""}.operator-work-menu{border-color:#aec9bfd6;border-radius:14px;background:linear-gradient(110deg,var(--view-wash) 0%,#f8faf6 100%)}.app-shell .export-button{color:#fffdf7;border-color:var(--view-accent);background:var(--view-accent);box-shadow:0 6px 14px var(--view-glow)}.kpi-card{border-radius:14px;box-shadow:0 12px 26px #17393014}.kpi-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-height:24px}.kpi-card-head>span{color:var(--muted);font-size:calc(12px * var(--type-scale, 1));font-weight:650;letter-spacing:.02em}.kpi-card-head>svg{flex:0 0 auto;color:var(--view-accent);opacity:.78}.kpi-card-population .kpi-card-head>svg{color:#73d0bb}.kpi-card-water .kpi-card-head>svg{color:#0d8178}.kpi-card-sewerage .kpi-card-head>svg{color:#347ca1}.kpi-card-caution .kpi-card-head>svg{color:#ad781f}.source-banner{border-radius:11px;border-left:3px solid var(--view-accent);background:linear-gradient(90deg,var(--view-wash),#f3f5ef)}.map-facts,.search-field,.table-tools select,.horizon-options,.basis-control,.button,.icon-button,.header-print-button{border-radius:10px}@keyframes workspace-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:980px){.hero{grid-template-columns:1fr;gap:40px;min-height:0;padding-top:58px}.source-map-preview,.hero-map-state{min-height:340px}.evidence-ledger{grid-template-columns:1fr;gap:34px}.ledger-intro h2{max-width:620px}.landing-bottom{grid-template-columns:1fr;gap:28px}.auth-page:before{inset:0 0 auto;height:540px}.auth-header .back-link{color:#dceae5}.login-layout{grid-template-columns:1fr;gap:34px;max-width:620px}.login-intro{max-width:520px}.login-card{justify-self:stretch}.kpi-grid{grid-template-columns:repeat(2,1fr)}.operator-work-menu{grid-template-columns:1fr;align-items:stretch}.dashboard-grid{grid-template-columns:1fr}.satellite-results,.climate-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.climate-station-list{grid-template-columns:1fr}.operational-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operational-grid{grid-template-columns:1fr}.demographic-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.demographic-grid{grid-template-columns:1fr}.spatial-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spatial-analytics-grid{grid-template-columns:1fr}.network-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.network-breakdown-grid,.network-analytics-grid{grid-template-columns:1fr}.urban-form-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.urban-form-analytics-grid{grid-template-columns:1fr}.urban-form-metric-options{grid-template-columns:repeat(2,minmax(0,1fr))}.requirements-workbench{grid-template-columns:1fr}.requirements-list-head,.requirement-result-row{grid-template-columns:minmax(0,1fr) minmax(92px,.44fr) minmax(132px,.72fr)}.requirements-list-head span:last-child,.requirement-row-source{display:none}.requirement-result-copy small{display:block}.audit-intake-grid,.handoff-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.requirement-detail-panel{position:static;order:-1;scroll-margin-top:80px}.capacity-reference-grid,.capacity-comparison-grid,.amrut-summary-grid,.standards-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.regulatory-sewage-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.planning-bar{grid-template-columns:1fr 1fr}}@media(max-width:1180px)and (min-width:721px){.workspace-content{width:calc(100% - 48px)}.planning-bar{grid-template-columns:1fr 1fr;align-items:end}.dashboard-grid{grid-template-columns:1fr}.workspace-title-row{align-items:flex-start;flex-direction:column}.title-actions{width:100%}.title-actions .button{min-width:0;flex:1}.workspace-title-row>.button{width:100%;min-width:0}.map-label,.map-status{max-width:calc(50% - 18px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(max-width:900px)and (min-width:721px){.data-status{display:none}.planning-bar{grid-template-columns:1fr;align-items:stretch}}@media(max-width:720px){.page-container{width:min(100% - 32px,560px)}.site-header{height:68px;gap:8px}.site-header .brand-mark{min-width:0;gap:6px}.site-header .brand-seal-image{width:34px;height:34px;flex-basis:34px;padding:2px}.site-header .brand-municipal-image{width:22px;height:34px;flex-basis:22px}.site-header .brand-name{font-size:13px;letter-spacing:.04em;white-space:nowrap}.site-header .brand-mark .brand-name-telugu,.site-header .brand-mark small{display:none}.site-header .header-actions{flex:0 0 auto;gap:0}.header-status{display:none}.hero{padding-top:52px;padding-bottom:52px}.hero h1{font-size:calc(clamp(47px,14vw,66px) * var(--type-scale, 1))}.hero-lede{font-size:calc(15px * var(--type-scale, 1))}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.source-map-preview,.hero-map-state{min-height:310px}.source-map-meta{top:15px;left:15px}.source-map-legend{right:170px;bottom:15px;left:15px;gap:8px}.source-map-counts{right:15px;bottom:15px;width:140px}.source-map-counts span{font-size:calc(10px * var(--type-scale, 1))}.evidence-ledger{padding-top:54px;padding-bottom:58px}.ledger-row{grid-template-columns:28px minmax(0,1fr);gap:14px}.ledger-row>strong{grid-column:2;justify-self:start;text-align:left}.landing-bottom{display:grid;gap:25px;padding-top:52px;padding-bottom:54px}.site-footer{align-items:flex-start;gap:18px;flex-direction:column}.auth-header{height:68px}.auth-page:before{height:470px}.login-layout{gap:20px;min-height:auto;padding-top:18px;padding-bottom:28px}.login-intro h1{font-size:calc(clamp(38px,11vw,44px) * var(--type-scale, 1));line-height:.98}.login-intro>p:not(.eyebrow){margin-top:16px;font-size:calc(14px * var(--type-scale, 1));line-height:1.55}.login-rule{margin-top:20px;padding-top:15px}.login-card{padding:18px}.login-card-head h2{font-size:calc(23px * var(--type-scale, 1))}.auth-empty-state{gap:10px;margin-top:18px;padding:16px}.auth-empty-state .button{margin-top:4px}.app-shell{display:block}.workspace-header{padding:0 16px}.workspace-header{gap:8px}.mobile-menu,.mobile-close{display:inline-grid}.workspace-mini-brand{display:grid;flex:0 0 44px}.breadcrumb{flex:1;min-width:0}.header-tools{min-width:0;gap:8px}.data-status{display:none}.header-print-button{width:44px;flex:0 0 44px;padding:0}.header-print-button span{display:none}.sidebar .mobile-close{flex:0 0 44px;color:#dcebe5;border-color:#31566c;background:#143651}.sidebar{position:fixed;top:0;bottom:0;left:0;z-index:20;transform:translate(-102%);transition:transform .24s var(--ease-out);box-shadow:var(--shadow-md)}.sidebar.open{transform:translate(0)}.sidebar-scrim{position:fixed;z-index:18;inset:0;background:#091d2f6b;animation:scrim-in .18s var(--ease-out) both}.workspace-content{width:calc(100% - 32px);padding-top:21px}.breadcrumb{gap:5px}.breadcrumb-home{width:44px;min-width:44px;padding:0;justify-content:center}.breadcrumb-home span,.breadcrumb-separator{display:none}.planning-bar{grid-template-columns:1fr;align-items:stretch;gap:16px;margin-bottom:24px}.planning-bar>div{width:100%}.planning-bar .horizon-options,.planning-bar .basis-control{width:100%}.planning-bar .horizon-option,.planning-bar .basis-control button{min-width:0;flex:1;padding-right:8px;padding-left:8px}.workspace-title-row{align-items:flex-start;flex-direction:column}.title-actions{align-items:stretch;width:100%;flex-direction:column}.operator-secondary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 8px}.operator-secondary-action{width:100%}.satellite-source-banner{align-items:flex-start;flex-direction:column}.satellite-source-banner a{align-items:center;min-height:44px}.climate-source-banner{align-items:flex-start;flex-direction:column}.climate-source-links{justify-content:flex-start}.climate-source-links a,.demographic-source-links a{min-height:44px}.operational-source-banner{align-items:flex-start;flex-direction:column}.operational-actions{justify-content:flex-start}.operational-schema-grid{grid-template-columns:1fr}.demographic-source-banner{align-items:flex-start;flex-direction:column}.demographic-source-links{justify-content:flex-start}.satellite-query{grid-template-columns:repeat(2,minmax(0,1fr))}.satellite-query .button{width:100%}.satellite-comparison-panel{padding:13px}.satellite-comparison-head{flex-direction:column}.satellite-mode-toggle{width:100%}.satellite-mode-toggle button{min-height:44px;flex:1}.satellite-comparison-facts{grid-template-columns:1fr}.satellite-comparison-stage{min-height:220px;aspect-ratio:1.35}.satellite-image-pair-slider{grid-template-columns:1fr 50px;gap:5px 10px}.satellite-image-pair-slider>span{grid-column:1 / -1}.satellite-comparison-slider{grid-template-columns:1fr 42px;gap:5px 10px}.satellite-comparison-slider>span{grid-column:1 / -1}.satellite-comparison-slider input,.satellite-scene-actions .button{min-height:44px}.satellite-results{grid-template-columns:1fr}.requirements-decision-strip{align-items:flex-start;flex-direction:column;gap:5px}.requirements-decision-strip>span{max-width:none;text-align:left}.requirements-tab-list{overflow-x:auto;scrollbar-width:thin}.requirements-tab{flex:0 0 auto}.requirements-command-bar{grid-template-columns:minmax(0,1fr) auto}.requirements-command-bar .search-field,.requirements-domain-filter{grid-column:1 / -1}.requirements-command-bar .button{grid-column:2}.requirements-result-list{max-height:min(62svh,520px)}.plain-language-groups,.climate-summary-grid{grid-template-columns:1fr}.operational-trend-actions{align-items:flex-end;flex-direction:column}.operational-trend-meta{align-items:flex-start;flex-direction:column;gap:3px}.operational-trend-meta span:last-child{text-align:left}.operational-trend-chart{height:230px}.operational-equity-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.operational-lower-grid{grid-template-columns:1fr}.demographic-controls{align-items:stretch;flex-direction:column}.demographic-controls label,.demographic-controls select{width:100%}.demographic-control-note,.demographic-loading{align-self:start;padding-bottom:0}.demographic-loading-card{grid-template-columns:auto minmax(0,1fr)}.demographic-loading-card i{grid-column:1 / -1}.capacity-reference-head,.amrut-program-head,.standards-reference-head{align-items:flex-start;flex-direction:column}.capacity-reference-grid,.capacity-comparison-grid,.amrut-summary-grid,.standards-summary-grid{grid-template-columns:1fr}.regulatory-sewage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.standards-reference-links{justify-content:flex-start}.standards-rule-list>div>div{align-items:flex-start;flex-direction:column;gap:4px}.standards-rule-list span{text-align:left}.workspace-title-row .button{width:100%}.operator-home-title .title-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.operator-home-title .title-actions .button{width:100%;min-width:0}.treatment-status{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}.treatment-status-meter{grid-column:1 / -1;grid-row:2}.treatment-status-gap{white-space:normal}.treatment-status .text-button{justify-self:end}.utility-picker{justify-content:space-between}.kpi-card{min-height:122px;padding:15px}.kpi-card>strong{font-size:calc(30px * var(--type-scale, 1))}.panel{padding:14px}.map-wrap{min-height:360px}.spatial-map-panel .map-wrap{min-height:380px}.spatial-chart-panel,.spatial-ranking-panel,.spatial-map-panel{padding:14px}.spatial-chart-frame{margin-right:-8px}.network-metric-panel,.network-breakdown-card,.network-chart-panel,.network-ranking-panel,.network-map-panel,.network-detail-panel{padding:14px}.network-map-panel .map-wrap{min-height:400px}.network-chart-frame{margin-right:-8px}.urban-form-metric-panel,.urban-form-chart-panel,.urban-form-coverage-panel,.urban-form-map-panel,.urban-form-detail-panel{padding:14px}.urban-form-map-panel .map-wrap{min-height:410px}.urban-form-chart-frame{margin-right:-8px}.capacity-reference-head .text-link,.amrut-program-links a,.standards-reference-links a{min-height:44px;align-items:center}.planning-bar{grid-template-columns:1fr;align-items:stretch}.basis-control{width:100%}.basis-control button{flex:1}.map-facts{grid-template-columns:repeat(2,1fr)}.map-legend{max-width:calc(100% - 20px)}.map-status{top:51px;right:auto;left:11px;max-width:calc(100% - 140px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-tool-stack{top:101px}.map-layer-panel{top:151px;bottom:12px;max-height:calc(100% - 163px);overflow-y:auto}.map-selection-chip{bottom:122px}.map-selected-feature-actions{display:grid;grid-template-columns:1fr}.map-selected-feature-actions .button{width:100%}.chart-frame{height:220px}.chart-year-picker-head{align-items:flex-start;flex-direction:column;gap:3px}.chart-year-option{min-height:74px;padding:8px 7px}.scenario-layout{grid-template-columns:1fr}.scenario-result{min-height:150px}.asset-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.quality-grid,.formula-grid{grid-template-columns:1fr}.table-tools{align-items:stretch;flex-direction:column}.table-status{min-width:0;text-align:left}.table-tools .search-field,.table-tools select{width:100%}.ward-brief{grid-template-columns:1fr;align-items:stretch}.ward-brief-actions{grid-template-columns:1fr}.ward-brief-actions .button{width:100%}.search-field input,.table-tools select,.map-feature-inspector input,.map-feature-inspector select,.input-wrap input{font-size:calc(16px * var(--type-scale, 1))}.table-scroll-hint{display:block}.source-banner{align-items:flex-start;flex-wrap:wrap}.source-banner>span:last-child{width:100%;margin-left:0;text-align:left}.source-note{align-items:flex-start;flex-direction:column;gap:3px}.audit-intake-grid,.audit-layer-list{grid-template-columns:1fr}.handoff-kit-head{align-items:flex-start;flex-direction:column}.handoff-kit-summary{justify-content:flex-start}.handoff-template-grid{grid-template-columns:1fr}.handoff-checker{grid-template-columns:1fr;align-items:stretch}.handoff-check-controls{grid-template-columns:1fr}.handoff-check-controls .button{width:100%}.handoff-check-result{grid-column:auto}.audit-row{align-items:flex-start;flex-direction:column;gap:9px}.audit-request-panel{align-items:stretch;flex-direction:column}.audit-request-actions{display:grid;grid-template-columns:1fr}.audit-request-panel .button{width:100%}.external-source-list a{min-height:44px;align-items:center}.toast{right:16px;bottom:max(16px,env(safe-area-inset-bottom));left:16px;max-width:none}}@media(max-width:430px){.header-tools{gap:9px}.data-status{display:none}.header-print-button{width:44px;padding:0}.header-print-button span{display:none}.satellite-comparison-stage{min-height:190px}.satellite-comparison-label{top:8px;max-width:46%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.satellite-comparison-label.before{left:8px}.satellite-comparison-label.after{right:8px}.horizon-options{width:100%}.horizon-option{flex:1}.horizon-option span{display:none}.kpi-grid{gap:7px}.kpi-card-population{grid-column:1 / -1}.kpi-card>span{min-height:24px}.kpi-card>strong{font-size:calc(28px * var(--type-scale, 1))}.asset-summary,.spatial-summary-grid,.network-summary-grid,.urban-form-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.network-donut-row{grid-template-columns:1fr;justify-items:center}.network-breakdown-list{width:100%}.network-metric-options{grid-template-columns:1fr}.network-metric-options button{min-height:68px}.urban-form-metric-options{grid-template-columns:repeat(2,minmax(0,1fr))}.urban-form-metric-options button{min-height:72px}.requirements-tab{gap:5px;padding:0 8px;font-size:calc(11px * var(--type-scale, 1))}.requirements-tab b{min-width:20px;height:20px}.requirements-list-head{display:none}.requirement-result-row{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;min-height:88px;padding-top:11px;padding-bottom:11px}.requirement-result-copy{grid-column:1;grid-row:1}.requirement-row-domain{grid-column:1;grid-row:2}.requirement-row-decision{grid-column:2;grid-row:1 / span 2;align-self:center}.requirement-row-decision small{display:none}.requirement-detail-panel{padding:15px}.requirement-detail-panel>h2{font-size:calc(23px * var(--type-scale, 1))}.requirement-detail-actions{grid-template-columns:1fr}.requirement-detail-actions .button{width:100%}.regulatory-sewage-grid{grid-template-columns:1fr}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes source-pulse{0%,to{opacity:.45;transform:scale(.86)}50%{opacity:1;transform:scale(1.15)}}@keyframes scrim-in{0%{opacity:0}to{opacity:1}}@keyframes spatial-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spatial-count-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes satellite-reveal{0%{opacity:0;transform:translateY(10px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes workspace-loading{0%{background-position:100% 0}to{background-position:-100% 0}}@media(hover:hover)and (pointer:fine){a:hover{text-decoration-color:currentColor}.filter-chip:hover{color:#164f49;border-color:#79b6a3;background:#dff0e8}.operator-secondary-action:hover{color:var(--teal-deep);background:#fffef9c2}.button-primary:hover{background:var(--teal-deep)}.button-secondary:hover{color:var(--teal-deep);border-color:#80a69a;background:#f3f7f3}.button-ghost:hover{color:#f7fbf8;border-color:#d6eee5ad;background:#ffffff0d}.text-link:hover,.text-button:hover{color:var(--teal-deep)}.icon-button:hover{color:var(--teal);border-color:#aecabe}.header-print-button:hover{color:var(--teal-deep);border-color:#80a69a;background:#f3f7f3}.header-link:hover{color:#fffdf7;text-decoration-color:currentColor}.hero-actions .text-link:hover{color:#f5fbf8;text-decoration-color:currentColor}.input-action:hover{color:var(--teal-deep);background:var(--teal-soft)}.nav-item:hover{color:#eef7f3;background:#153c59}.nav-item.signout:hover{color:#ffe6de;background:#3b3240}.horizon-option:hover,.basis-control button:hover{color:var(--navy);background:#edf1ed}.map-reset-trigger:hover,.map-layer-trigger:hover{color:#fffdf7;border-color:var(--teal);background:var(--teal)}.map-layer-panel label:hover{background:#e9f3ed}.map-attribution a:hover{color:var(--teal-deep)}.toast>button:hover{color:#fffdf7;background:#ffffff14}.asset-summary button:hover{color:#244f40;border-color:#91b3a3;background:#eaf3ed}.network-metric-options button:not(.active):hover,.urban-form-metric-options button:not(.active):hover{border-color:#80a99c;background:#edf5f1;transform:translateY(-1px)}tbody tr:hover td{background:#edf4ef}}@media print{.sidebar,.workspace-header,.planning-bar,.title-actions,.table-tools,.demographic-controls,.satellite-query,.satellite-mode-toggle,.satellite-image-pair-slider,.satellite-comparison-slider,.satellite-scene-actions,.operational-actions,.operational-schema-guide,.requirements-tab-list,.requirements-command-bar,.requirement-detail-actions,.audit-page-menu,.audit-request-actions,.handoff-template-actions button,.handoff-checker,.network-metric-options,.urban-form-metric-options,.map-find-trigger,.map-reset-trigger,.map-layer-trigger,.map-feature-inspector,.maplibregl-control-container,.toast,.action-status{display:none!important}.app-shell{display:block}.workspace-content{width:100%;padding:0}body{color:#111;background:#fff;font-size:11pt}.panel,.kpi-card{break-inside:avoid;box-shadow:none}table{break-inside:auto}tr{break-inside:avoid}.data-register-scroll{max-height:none;overflow:visible}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--navy: #17375e;--navy-raised: #1e4b7a;--paper: #dfe7ea;--paper-deep: #d3dee2;--card: #ffffff;--card-strong: #ffffff;--line: #c2d2d6;--line-strong: #94aab1;--shadow-sm: 0 1px 2px rgba(15, 48, 68, .06);--shadow-md: 0 10px 26px rgba(15, 48, 68, .14)}body{font-size:calc(16px * var(--type-scale, 1));line-height:1.5}h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em}.button,.icon-button,.header-print-button,.search-field,.table-tools select,.horizon-options,.basis-control{border-radius:6px}.site-header{height:72px}.header-actions{gap:18px}.header-status{color:#afc8c0;font-size:calc(11px * var(--type-scale, 1))}.hero{min-height:520px;gap:clamp(32px,6vw,72px);padding-top:50px;padding-bottom:58px}.hero-copy{max-width:540px}.hero h1{max-width:11ch;font-size:calc(clamp(44px,5.5vw,68px) * var(--type-scale, 1));font-family:var(--font-display);font-weight:600;letter-spacing:-.06em;line-height:.98}.hero-lede{max-width:38ch;margin-top:20px;font-size:calc(16px * var(--type-scale, 1));line-height:1.5}.hero-actions{margin-top:26px}.source-map-preview,.hero-map-state{min-height:360px;border-radius:7px;box-shadow:none}.evidence-ledger{gap:clamp(36px,6vw,72px);padding-top:52px;padding-bottom:56px}.ledger-intro h2{max-width:14ch;font-family:var(--font-display);font-size:calc(clamp(28px,3.5vw,40px) * var(--type-scale, 1));font-weight:600;line-height:1.05}.ledger-row{gap:14px;padding:17px 0}.ledger-row p{margin-top:4px;line-height:1.45}.landing-bottom{gap:48px;padding-top:52px;padding-bottom:56px}.landing-bottom h2{max-width:16ch;font-family:var(--font-display);font-size:calc(clamp(30px,3.6vw,44px) * var(--type-scale, 1));font-weight:600;line-height:1.03}.landing-bottom>p{max-width:38ch;line-height:1.5}.site-footer{padding-top:20px;padding-bottom:24px}.app-shell{grid-template-columns:236px minmax(0,1fr)}.sidebar{width:236px;padding:20px 12px max(16px,env(safe-area-inset-bottom))}.sidebar-head{padding:2px 9px 20px}.scope-card{margin:0 6px 20px;padding:13px 12px;border-radius:8px;box-shadow:none}.sidebar-nav{gap:11px}.nav-group{gap:3px}.nav-item{min-height:44px;padding:0 11px;border-radius:6px}.nav-item.active{box-shadow:inset 3px 0 0 var(--nav-accent, #63c8b4)}.workspace-header{position:sticky;min-height:64px;padding:0 28px;border-top-width:2px;background:#fff;box-shadow:0 3px 12px #163a310d}.workspace-header:before{position:absolute;top:-2px;right:0;left:0;height:2px;background:linear-gradient(90deg,var(--goi-saffron) 0 33.33%,#ffffff 33.33% 66.66%,var(--goi-green) 66.66% 100%);content:""}.header-tools{gap:12px}.workspace-content{width:min(1260px,calc(100% - 56px));padding:24px 0 48px}.planning-bar{gap:14px;margin-bottom:22px;padding:12px 14px;border:1px solid #cbded5;border-left:3px solid var(--view-accent, var(--teal));border-radius:8px;background:#eef6f2;box-shadow:none}.horizon-label{margin-bottom:6px}.horizon-options{padding:2px;background:#dce8e2}.horizon-option{min-height:44px;padding:6px 10px}.workspace-title-row{gap:18px;margin-bottom:16px;padding-left:12px}.workspace-title-row:before{width:3px}.workspace-title-row h1{font-size:calc(clamp(30px,3vw,38px) * var(--type-scale, 1));font-family:var(--font-display);font-weight:600}.operator-work-menu{border-radius:8px;box-shadow:none}.panel{padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow-sm)}.panel-head{margin-bottom:14px}.kpi-card{min-height:124px;padding:16px;border-radius:8px;box-shadow:var(--shadow-sm)}.kpi-card-water{border-color:#94c9bd;background:#d8efe7}.kpi-card-sewerage{border-color:#9dc4dc;background:#dbeaf4}.kpi-card-caution{border-color:#dcbb7d;background:#f8e9c9}.kpi-card>strong{font-family:var(--font-display);font-weight:600}.source-banner{border-radius:8px;box-shadow:none}.map-wrap,.map-loading-state,.map-loading-preview{border-radius:6px}.data-status{font-size:calc(11px * var(--type-scale, 1))}.avatar{width:32px;height:32px}.login-layout{padding-top:20px;padding-bottom:48px}.login-intro h1{font-family:var(--font-display);font-weight:600}.login-card{padding:24px;border-radius:8px;box-shadow:var(--shadow-md)}.auth-mode{padding:2px 0;color:var(--muted);border:0;border-radius:0;background:transparent;font-size:calc(11px * var(--type-scale, 1));letter-spacing:.06em}@media(max-width:720px){.site-footer-grid{grid-template-columns:minmax(0,1fr);gap:26px;padding:30px 0 24px}.site-footer-base .page-container{flex-direction:column;align-items:flex-start}.accessibility-bar-inner{justify-content:flex-start;width:calc(100% - 24px)}.accessibility-standard{display:none}.site-header{height:64px}.hero{gap:30px;padding-top:36px;padding-bottom:42px}.hero h1{max-width:12ch;font-size:calc(clamp(40px,12vw,54px) * var(--type-scale, 1))}.hero-lede{margin-top:16px;font-size:calc(15px * var(--type-scale, 1))}.hero-actions{margin-top:22px}.source-map-preview,.hero-map-state{min-height:280px}.evidence-ledger{padding-top:42px;padding-bottom:46px}.ledger-intro h2{max-width:16ch}.landing-bottom{gap:24px;padding-top:42px;padding-bottom:46px}.landing-bottom h2{font-size:calc(32px * var(--type-scale, 1))}.workspace-header{min-height:62px;padding:0 12px}.workspace-content{width:calc(100% - 24px);padding-top:18px;padding-bottom:36px}.sidebar{width:min(300px,calc(100vw - 32px))}.workspace-title-row{margin-bottom:14px}.workspace-title-row h1{font-size:calc(32px * var(--type-scale, 1))}.planning-bar{padding:11px 12px}.operator-work-menu,.panel{padding:14px}.kpi-card{min-height:116px;padding:14px}}:root{--indigo-deep: var(--navy);--emerald: var(--teal);--emerald-bright: #159b8d;--saffron: var(--goi-saffron);--saffron-bright: #e7ad4e;--sky: var(--blue);--coral: var(--orange);--shadow-lg: 0 16px 38px rgba(15, 48, 68, .18)}.hero-source-map{position:relative;overflow:hidden;height:clamp(380px,46vh,480px);border:1px solid rgba(255,255,255,.16);border-radius:12px;background:#0b2f6b;box-shadow:var(--shadow-lg)}.hero-source-map .hero-source-map-canvas{position:absolute;inset:0}.hero-source-map-canvas .maplibregl-ctrl-bottom-right{bottom:34px}.hero-source-map-caption{position:absolute;z-index:2;top:12px;left:12px;display:grid;gap:2px;padding:8px 12px;border-radius:8px;background:#04122ed1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.hero-source-map-kicker{color:#4fe0c4;font-size:calc(10px * var(--type-scale, 1));font-weight:700;letter-spacing:.12em;text-transform:uppercase}.hero-source-map-caption strong{color:#fff;font-size:calc(13px * var(--type-scale, 1));font-weight:700}.hero-source-map-legend{position:absolute;z-index:2;right:12px;bottom:34px;display:grid;gap:5px;margin:0;padding:9px 11px;border-radius:8px;background:#04122ed1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.hero-source-map-legend>div{display:flex;align-items:center;justify-content:space-between;gap:14px}.hero-source-map-legend dt{display:flex;align-items:center;gap:6px;margin:0;color:#cfe0f2;font-size:calc(11px * var(--type-scale, 1));font-weight:600}.hero-source-map-legend dd{margin:0;color:#fff;font-size:calc(11px * var(--type-scale, 1));font-weight:700;font-variant-numeric:tabular-nums}.hero-legend-swatch{display:block;width:10px;height:10px;flex:0 0 auto;border-radius:2px}.hero-legend-swatch.boundary{background:#ff8f1f}.hero-legend-swatch.ward{background:#12c9a8}.hero-legend-swatch.water{background:#1c7fd6}.hero-legend-swatch.asset{border-radius:50%;background:#ffb03a}.hero-source-map-status{position:absolute;z-index:3;right:0;bottom:0;left:0;padding:9px 12px;color:#cfe0f2;background:#04122edb;font-size:calc(11px * var(--type-scale, 1));font-weight:600;text-align:center}.hero-source-map-attribution{position:absolute;z-index:2;bottom:0;left:0;padding:4px 9px;color:#9fbad6;border-top-right-radius:6px;background:#04122ec7;font-size:calc(9.5px * var(--type-scale, 1))}.brand-identity{display:block;min-width:0}.brand-mark .brand-name{display:block;color:var(--indigo-deep);font-size:calc(18px * var(--type-scale, 1));font-weight:800;letter-spacing:.1em;line-height:1}.brand-mark-light .brand-name{color:#fff}.brand-mark .brand-name-telugu{display:block;margin-top:3px;color:#00776a;font-family:var(--font-telugu);font-size:calc(12px * var(--type-scale, 1));font-weight:600;letter-spacing:0;line-height:1.3}.brand-mark-light .brand-name-telugu{color:#4fe0c4}.brand-mark small{margin-top:4px;color:#4a5f7a;font-size:calc(10px * var(--type-scale, 1));letter-spacing:.07em}.brand-mark-light small{color:#b6cbe4}.brand-seal-image{border-color:#fffdf8cc;box-shadow:0 3px 10px #04122e47}.landing-page{background:#102f49}.landing-ledger-band{background:#fff}.landing-boundary-band{background:#743f36}.hero h1{font-weight:700;letter-spacing:-.04em}.hero .hero-platform-name{max-width:none;margin:0;color:#fff;font-size:calc(clamp(44px,5.5vw,68px) * var(--type-scale, 1));font-weight:700;letter-spacing:.04em;line-height:1}.hero-platform-telugu{margin:12px 0 0;color:#4fe0c4;font-family:var(--font-telugu);font-size:calc(22px * var(--type-scale, 1));font-weight:600;line-height:1.3}.hero-platform-descriptor{margin:12px 0 0;color:#d3e2f2;font-size:calc(15px * var(--type-scale, 1));font-weight:700;letter-spacing:.05em;text-transform:uppercase}.hero .hero-lede{margin-top:16px;color:#a8c2dc}.ledger-row strong{color:var(--teal-deep);font-weight:700}.site-footer-gov{border-top:3px solid var(--saffron);background:#0b2033}:root{--line-height-telugu: 1.68}:where(:lang(te)),.brand-name-telugu,.hero-platform-telugu{font-family:var(--font-telugu);letter-spacing:normal}:lang(te){line-height:var(--line-height-telugu)}.brand-mark .brand-name-telugu,.hero-platform-telugu{line-height:var(--line-height-telugu)}.skip-link:focus-visible{transform:translateY(0)}.accessibility-language{display:flex;align-items:center;gap:4px}.accessibility-language button{min-height:26px;padding:2px 9px;color:var(--ink-soft);border:1px solid var(--line-strong);border-radius:5px;background:#fff;font-size:calc(12px * var(--type-scale, 1));font-weight:600;line-height:1;transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.accessibility-language button:hover{color:var(--navy);border-color:var(--view-accent, var(--navy))}.accessibility-language button.selected{color:#fff;border-color:var(--navy);background:var(--navy)}.accessibility-language button[lang=te]{font-family:var(--font-telugu)}.accessibility-bar-dark .accessibility-language button{color:#dbe9e4;border-color:#ffffff3d;background:#ffffff0f}.accessibility-bar-dark .accessibility-language button.selected{color:#04122e;border-color:#8fd6c6;background:#8fd6c6}.accessibility-translation-notice{margin:0;padding:7px 24px;color:#6b3605;border-top:1px solid #e2c68d;background:#fdf3dc;font-size:calc(12px * var(--type-scale, 1));font-weight:600;line-height:var(--line-height-telugu);text-align:center}.share-whatsapp{color:#0b7a45;border-color:#9ed3b6}.share-whatsapp:hover{color:#075c34;border-color:#4fae7f;background:#e6f6ed}.qr-scrim{position:fixed;z-index:60;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;background:#04122e9e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.qr-dialog{display:grid;gap:12px;width:min(400px,100%);padding:20px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow-lg)}.qr-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.qr-dialog-head h2{margin:0;color:var(--indigo-deep);font-size:calc(17px * var(--type-scale, 1));font-weight:700}.qr-dialog-image{display:block;width:100%;max-width:280px;height:auto;margin:0 auto;border:1px solid var(--line);border-radius:8px}.qr-dialog-help{margin:0;color:var(--ink-soft);font-size:calc(13px * var(--type-scale, 1));line-height:1.5}.qr-dialog-error{margin:0;color:var(--danger);font-size:calc(13px * var(--type-scale, 1));font-weight:600}.qr-dialog-url{display:block;overflow-wrap:anywhere;color:var(--muted);font-family:var(--font-mono);font-size:calc(11px * var(--type-scale, 1))}@media print{.qr-scrim{position:static;display:block;padding:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none}.qr-dialog{border:0;box-shadow:none}.qr-dialog-head button{display:none!important}}.growth-controls{display:flex;align-items:flex-end;flex-wrap:wrap;gap:20px;margin:16px 0 18px;padding:14px 16px;border:1px solid var(--line);border-left:4px solid var(--view-accent);border-radius:10px;background:linear-gradient(120deg,#ffffff,var(--view-wash))}.growth-control-group{display:grid;gap:6px}.growth-weight-field{display:grid;gap:6px;min-width:280px;flex:1 1 280px}.growth-weight-field>span{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--ink-soft);font-size:calc(12px * var(--type-scale, 1));font-weight:600}.growth-weight-field>span strong{color:var(--indigo-deep);font-size:calc(17px * var(--type-scale, 1));font-weight:800;font-variant-numeric:tabular-nums}.growth-weight-field small{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));line-height:1.45}.growth-weight-field input[type=range]{width:100%;accent-color:var(--view-accent)}.growth-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px}.growth-summary-grid article{display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow-sm)}.growth-summary-grid span{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));font-weight:700;letter-spacing:.05em;text-transform:uppercase}.growth-summary-grid strong{color:var(--indigo-deep);font-size:calc(26px * var(--type-scale, 1));font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.growth-summary-grid small{color:var(--muted);font-size:calc(11px * var(--type-scale, 1))}.growth-summary-check{border-color:#9dcdc0;background:#e8f7f2}.growth-summary-check strong{color:#05564a}.growth-finding{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px;padding:14px 16px;border:1px solid #9dcdc0;border-radius:10px;background:#e8f7f2}.growth-finding svg{flex:0 0 auto;margin-top:2px;color:#05564a}.growth-finding strong{display:block;margin-bottom:4px;color:var(--indigo-deep);font-size:calc(14px * var(--type-scale, 1))}.growth-finding span{color:var(--ink-soft);font-size:calc(13px * var(--type-scale, 1));line-height:1.5}.growth-positive{color:#05564a;font-weight:700;font-variant-numeric:tabular-nums}.growth-negative{color:#9a3412;font-weight:700;font-variant-numeric:tabular-nums}.growth-table-note{margin:8px 0 20px;color:var(--muted);font-size:calc(12px * var(--type-scale, 1))}.growth-provenance{padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff}.growth-provenance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:14px 0}.growth-provenance-grid dt{margin-bottom:4px;color:var(--muted);font-size:calc(11px * var(--type-scale, 1));font-weight:700;letter-spacing:.05em;text-transform:uppercase}.growth-provenance-grid dd{margin:0;color:var(--ink-soft);font-size:calc(12px * var(--type-scale, 1));line-height:1.5;overflow-wrap:anywhere}.growth-provenance-grid code{font-family:var(--font-mono);font-size:calc(11px * var(--type-scale, 1))}.growth-method-note{margin:-6px 0 16px;padding:9px 13px;color:var(--ink-soft);border-left:3px solid var(--view-accent);border-radius:0 6px 6px 0;background:var(--view-wash);font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.growth-map{position:relative;overflow:hidden;height:clamp(360px,44vh,460px);margin-bottom:18px;border:1px solid var(--line);border-radius:12px;background:#0b2f6b;box-shadow:var(--shadow-md)}.growth-map .growth-map-canvas{position:absolute;inset:0}.growth-map-fallback{display:grid;place-items:center;height:clamp(360px,44vh,460px);margin-bottom:18px;border:1px solid var(--line);border-radius:12px;background:var(--view-wash);color:var(--muted);font-size:calc(13px * var(--type-scale, 1))}.growth-map-legend{position:absolute;z-index:2;bottom:30px;left:12px;display:grid;gap:5px;min-width:190px;padding:9px 11px;border-radius:8px;background:#04122ed6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.growth-map-legend-title{color:#cfe0f2;font-size:calc(10px * var(--type-scale, 1));font-weight:700;letter-spacing:.08em;text-transform:uppercase}.growth-map-scale{display:block;height:8px;border-radius:999px;background:linear-gradient(90deg,#c2410c,#fdba74,#f1f5f9,#5eead4,#0f766e)}.growth-map-legend>div{display:flex;justify-content:space-between;color:#9fbad6;font-size:calc(10px * var(--type-scale, 1))}.growth-map-readout{position:absolute;z-index:3;top:12px;right:12px;width:min(260px,calc(100% - 24px));padding:13px 15px;border-radius:10px;background:#fffffff7;box-shadow:var(--shadow-md)}.growth-map-readout strong{display:block;margin-bottom:8px;padding-right:20px;color:var(--indigo-deep);font-size:calc(14px * var(--type-scale, 1));font-weight:800}.growth-map-readout dl{display:grid;gap:4px;margin:0}.growth-map-readout dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.growth-map-readout dt{margin:0;color:var(--muted);font-size:calc(11px * var(--type-scale, 1))}.growth-map-readout dd{margin:0;color:var(--ink);font-size:calc(12px * var(--type-scale, 1));font-weight:700;font-variant-numeric:tabular-nums}.growth-map-readout-close{position:absolute;top:8px;right:9px;width:22px;height:22px;color:var(--muted);border:0;border-radius:5px;background:transparent;font-size:17px;line-height:1}.growth-map-readout-close:hover{color:var(--ink);background:var(--paper)}.growth-map-status{position:absolute;z-index:3;right:0;bottom:0;left:0;padding:9px;color:#cfe0f2;background:#04122edb;font-size:calc(11px * var(--type-scale, 1));font-weight:600;text-align:center}.growth-map-attribution{position:absolute;z-index:2;bottom:0;left:0;padding:3px 8px;color:#9fbad6;border-top-right-radius:6px;background:#04122ec7;font-size:calc(9.5px * var(--type-scale, 1))}.growth-split{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;margin-bottom:18px}.growth-rank{padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#fff}.growth-rank h2{margin:0 0 10px;color:var(--indigo-deep);font-size:calc(14px * var(--type-scale, 1));font-weight:700}.growth-rank ol{display:grid;gap:8px;margin:0;padding:0;list-style:none;counter-reset:growth-rank}.growth-rank li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--paper-deep)}.growth-rank li:last-child{border-bottom:0}.growth-rank li strong{display:block;color:var(--ink);font-size:calc(13px * var(--type-scale, 1));font-weight:700}.growth-rank li small{color:var(--muted);font-size:calc(11px * var(--type-scale, 1))}.growth-rank-figures{display:grid;justify-items:end}.growth-rank-figures b{color:var(--indigo-deep);font-size:calc(14px * var(--type-scale, 1));font-variant-numeric:tabular-nums}.growth-rank-figures em{font-size:calc(11px * var(--type-scale, 1));font-style:normal}.growth-rank-water{min-width:72px;color:var(--ink-soft);font-size:calc(12px * var(--type-scale, 1));font-weight:600;text-align:right;font-variant-numeric:tabular-nums}.growth-rank-muted{background:var(--paper)}.growth-method-details{padding:12px 16px;border:1px solid var(--line);border-radius:10px;background:#fff}.growth-method-details>summary{color:var(--indigo-deep);font-size:calc(13px * var(--type-scale, 1));font-weight:700}.growth-method-details>p{color:var(--ink-soft);font-size:calc(13px * var(--type-scale, 1));line-height:1.6}@media(max-width:900px){.growth-split{grid-template-columns:minmax(0,1fr)}}.worldpop-snapshot-note{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;border-left:4px solid var(--saffron);background:linear-gradient(120deg,#fff,#fff6ea)}.worldpop-snapshot-note strong{color:#8a4d05}.worldpop-snapshot-note span{flex:1 1 320px}.worldpop-snapshot-note .button{flex:0 0 auto}.capacity-hero{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:20px;margin-bottom:18px;padding:20px;border:1px solid var(--line);border-left:4px solid var(--coral);border-radius:12px;background:linear-gradient(120deg,#fff,#fdeae6)}.capacity-hero-figure{display:grid;align-content:center;gap:6px}.capacity-hero-value{color:var(--coral);font-size:calc(58px * var(--type-scale, 1));font-weight:800;letter-spacing:-.04em;line-height:1}.capacity-hero-label{color:var(--indigo-deep);font-size:calc(15px * var(--type-scale, 1));font-weight:700}.capacity-hero-track{overflow:hidden;height:12px;margin-top:6px;border-radius:999px;background:#f3d3cb}.capacity-hero-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--coral),#f0836c)}.capacity-hero-detail{color:var(--ink-soft);font-size:calc(12px * var(--type-scale, 1));font-weight:600}.capacity-hero-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;align-content:center}.capacity-hero-cards article{display:grid;gap:2px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}.capacity-hero-cards span{color:var(--muted);font-size:calc(10.5px * var(--type-scale, 1));font-weight:700;letter-spacing:.05em;text-transform:uppercase}.capacity-hero-cards strong{color:var(--indigo-deep);font-size:calc(26px * var(--type-scale, 1));font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.capacity-hero-cards small{color:var(--muted);font-size:calc(11px * var(--type-scale, 1))}.capacity-card-alert{border-color:#e8a294;background:#fdeae6}.capacity-card-alert strong{color:#9a3412}.capacity-chart{margin-bottom:12px;padding:16px 16px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow-sm)}.capacity-chart-frame{height:clamp(260px,34vh,340px)}.capacity-chart-fallback{display:grid;place-items:center;height:clamp(260px,34vh,340px);margin-bottom:12px;border:1px solid var(--line);border-radius:12px;background:var(--view-wash);color:var(--muted);font-size:calc(13px * var(--type-scale, 1))}.capacity-chart-legend{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:8px;color:var(--ink-soft);font-size:calc(12px * var(--type-scale, 1));font-weight:600}.capacity-chart-legend span{display:inline-flex;align-items:center;gap:7px}.capacity-swatch{display:block;width:14px;height:4px;border-radius:2px}.capacity-swatch.demand{height:12px;width:12px;border-radius:3px;background:#e8563f}.capacity-swatch.tendered{background:repeating-linear-gradient(90deg,#0f766e 0 6px,transparent 6px 10px)}.capacity-swatch.installed{background:#c2410c}.capacity-readout{margin:0 0 18px;padding:12px 15px;color:var(--ink-soft);border-left:3px solid var(--coral);border-radius:0 8px 8px 0;background:#fdeae6;font-size:calc(13.5px * var(--type-scale, 1));line-height:1.55}.capacity-readout strong{color:#9a3412}.capacity-source-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px}@media(max-width:860px){.capacity-hero{grid-template-columns:minmax(0,1fr)}}.view-lede{max-width:68ch;margin:-6px 0 20px;color:var(--ink-soft);font-size:calc(15px * var(--type-scale, 1));line-height:1.55;text-wrap:pretty}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:20px}.stat-card{position:relative;display:grid;align-content:space-between;gap:8px;overflow:hidden;min-height:118px;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow-sm)}.stat-card:before{position:absolute;top:0;right:0;left:0;height:3px;background:var(--view-accent);content:""}.stat-card-label{color:var(--muted);font-size:calc(11px * var(--type-scale, 1));font-weight:700;letter-spacing:.06em;text-transform:uppercase}.stat-card-value{color:var(--indigo-deep);font-size:calc(clamp(26px,2.4vw,34px) * var(--type-scale, 1));font-weight:800;letter-spacing:-.035em;line-height:1;font-variant-numeric:tabular-nums}.stat-card-detail{color:var(--muted);font-size:calc(12px * var(--type-scale, 1));line-height:1.4}.stat-card-accent:before{background:linear-gradient(90deg,var(--view-accent),var(--view-accent-alt))}.stat-card-accent .stat-card-value{color:var(--view-accent)}.stat-card-alert{border-color:#e8a294;background:#fdeae6}.stat-card-alert:before{background:var(--coral)}.stat-card-alert .stat-card-value{color:#9a3412}.stat-card-good{border-color:#9dcdc0;background:#e8f7f2}.stat-card-good:before{background:var(--emerald)}.stat-card-good .stat-card-value{color:#05564a}.view-highlight{display:flex;align-items:flex-start;gap:13px;margin-bottom:20px;padding:15px 17px;border:1px solid var(--line);border-left:4px solid var(--view-accent);border-radius:10px;background:linear-gradient(120deg,#ffffff,var(--view-wash))}.view-highlight svg{flex:0 0 auto;margin-top:2px;color:var(--view-accent)}.view-highlight strong{display:block;margin-bottom:3px;color:var(--indigo-deep);font-size:calc(14.5px * var(--type-scale, 1));font-weight:700;text-wrap:balance}.view-highlight span{color:var(--ink-soft);font-size:calc(13px * var(--type-scale, 1));line-height:1.55}.view-highlight-alert{border-left-color:var(--coral);background:linear-gradient(120deg,#fff,#fdeae6)}.view-highlight-alert svg{color:var(--coral)}.view-highlight-good{border-left-color:var(--emerald);background:linear-gradient(120deg,#fff,#e8f7f2)}.view-highlight-good svg{color:#05564a}.workspace-title-row{flex-wrap:wrap;row-gap:12px}.workspace-title-row>div:first-child{flex:1 1 clamp(240px,32vw,420px);min-width:0}.workspace-title-row .title-actions{flex:0 1 auto;flex-wrap:wrap;align-items:center;row-gap:8px}.workspace-title-row .title-actions .status-chip{white-space:nowrap}@media(max-width:1100px){.workspace-title-row>div:first-child{flex:1 1 100%}.workspace-title-row .title-actions{flex:1 1 100%;justify-content:flex-start}}.skeleton-view{display:grid;gap:16px}.skeleton-title{display:grid;gap:10px}.skeleton-bar{display:block;background:linear-gradient(90deg,var(--paper-deep) 25%,var(--paper) 37%,var(--paper-deep) 63%);background-size:400% 100%;animation:skeleton-sheen 1.4s ease-in-out infinite}.skeleton-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.skeleton-stat-card{display:grid;align-content:space-between;gap:10px;min-height:118px;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:#fff}.skeleton-block{height:300px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(90deg,var(--paper-deep) 25%,var(--paper) 37%,var(--paper-deep) 63%);background-size:400% 100%;animation:skeleton-sheen 1.4s ease-in-out infinite}.skeleton-block-map{height:clamp(360px,44vh,460px)}@keyframes skeleton-sheen{0%{background-position:100% 50%}to{background-position:0 50%}}@media(prefers-reduced-motion:reduce){.skeleton-bar,.skeleton-block{animation:none;background:var(--paper-deep)}}.link-button{padding:0;color:var(--view-accent);border:0;background:none;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}.link-button:hover{color:var(--indigo-deep)}.view-highlight-alert .link-button{color:#9a3412}.view-highlight-alert .link-button:hover{color:#7a2b1d}.print-masthead,.print-footer,.print-view-label{display:none}@media print{.accessibility-bar,.skip-link,.share-tools,.view-actions,.skeleton-view,.growth-controls,.scenario-controls,.nav-toggle{display:none!important}.print-masthead{display:flex;align-items:center;gap:14px;padding-bottom:10px;margin-bottom:14px;border-bottom:2.5pt solid #17375e}.print-masthead img{width:44px;height:44px}.print-masthead-identity{display:grid;gap:1px}.print-masthead-identity strong{font-size:15pt;letter-spacing:.02em}.print-masthead-identity span{font-size:11pt}.print-masthead-identity small{font-size:8.5pt;color:#444}.print-masthead-owner{margin-left:auto;text-align:right}.print-masthead-owner strong{display:block;font-size:9.5pt}.print-masthead-owner span{font-size:8.5pt;color:#444}.print-view-label{display:block;margin:0 0 12px;font-size:8.5pt;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#444}.print-footer{display:block;margin-top:18px;padding-top:8px;border-top:.75pt solid #999;font-size:8pt;color:#444}.print-footer span{display:block}@page{margin:14mm 12mm}}@keyframes login-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes login-shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(3px)}30%,50%,70%{transform:translate(-5px)}40%,60%{transform:translate(5px)}}.login-intro,.login-card{animation:login-rise .5s cubic-bezier(.22,.68,.35,1) both}.login-card{animation-delay:.1s}.login-shake{animation:login-shake .5s cubic-bezier(.36,.07,.19,.97) both}.login-form .input-wrap{transition:border-color .16s ease,box-shadow .16s ease}.login-form .input-wrap:focus-within{border-color:var(--view-accent, #0b6b6b);box-shadow:0 0 0 3px #0b6b6b29}.login-form .button-primary{transition:transform .12s ease,filter .16s ease}.login-form .button-primary:hover:not(:disabled){filter:brightness(1.08)}.login-form .button-primary:active:not(:disabled){transform:translateY(1px)}.mock-auth-page{background-color:#e7f2ee}.mock-auth-page:before{display:block;background:radial-gradient(circle at 8% 8%,rgba(19,139,129,.22) 0 152px,transparent 153px),radial-gradient(circle at 94% 92%,rgba(230,160,54,.26) 0 190px,transparent 191px),linear-gradient(rgba(17,55,94,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(17,55,94,.05) 1px,transparent 1px);background-size:auto,auto,28px 28px,28px 28px}.mock-login-layout{display:grid;min-height:calc(100vh - 84px);min-height:calc(100dvh - 84px);place-items:center;padding-top:24px;padding-bottom:56px}.mock-login-card{--mock-role: #147d76;--mock-role-dark: #0b5e58;--mock-role-soft: #e8f6f2;--mock-role-line: #a7d6ca;width:min(100%,620px);overflow:hidden;border:1px solid rgba(17,55,94,.14);border-radius:18px;background:#fff;box-shadow:0 24px 54px #0b2a412e}.mock-login-card[data-selected-role=state_planner]{--mock-role: #2c67ac;--mock-role-dark: #164982;--mock-role-soft: #ebf3ff;--mock-role-line: #b9d2ef}.mock-login-card[data-selected-role=ulb_engineer]{--mock-role: #147d76;--mock-role-dark: #0b5e58;--mock-role-soft: #e8f6f2;--mock-role-line: #a7d6ca}.mock-login-card[data-selected-role=ward_operator]{--mock-role: #c76c1d;--mock-role-dark: #91440e;--mock-role-soft: #fff1e4;--mock-role-line: #f0c69c}.mock-login-card[data-selected-role=authenticated_reviewer]{--mock-role: #8553a5;--mock-role-dark: #603679;--mock-role-soft: #f5edfb;--mock-role-line: #ddc4eb}.mock-login-banner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:126px;padding:24px 28px;overflow:hidden;color:#fff;border-bottom:5px solid var(--mock-role);background:#103652}.mock-login-banner:before{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:26px 26px;content:""}.mock-login-banner>*{position:relative;z-index:1}.mock-login-kicker{margin:0 0 8px;color:#9fe2d1;font-size:calc(10px * var(--type-scale, 1));font-weight:750;letter-spacing:.11em;line-height:1.2;text-transform:uppercase}.mock-login-banner h1{margin:0;color:#fff;font-size:calc(29px * var(--type-scale, 1));font-weight:650;letter-spacing:-.045em;line-height:1.08}.mock-login-watermark{display:grid;flex:0 0 auto;width:62px;height:62px;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:var(--mock-role);box-shadow:0 0 0 8px #ffffff14}.mock-login-card-body{padding:22px 28px 26px}.mock-login-instruction{margin:0 0 15px;color:#45636b;font-size:calc(13px * var(--type-scale, 1));font-weight:600}.mock-role-selector-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px;color:#345b57;font-size:calc(11px * var(--type-scale, 1));font-weight:750;letter-spacing:.05em;text-transform:uppercase}.role-help-trigger{display:inline-grid;width:32px;height:32px;flex:0 0 auto;place-items:center;color:var(--mock-role-dark);border:1px solid var(--mock-role-line);border-radius:50%;background:var(--mock-role-soft);cursor:pointer;transition:color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease}.role-help-trigger:hover{color:#fff;background:var(--mock-role);box-shadow:0 4px 10px color-mix(in srgb,var(--mock-role) 22%,transparent);transform:translateY(-1px)}.role-help-trigger:focus-visible{outline:3px solid #103652;outline-offset:2px}.mock-role-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px;border:1px solid #d8e5e1;border-radius:13px;background:#eef5f2}.mock-role-tab{--role: #147d76;--role-soft: #e8f6f2;--role-ink: #0b5e58;display:flex;align-items:center;justify-content:center;gap:7px;min-height:46px;border:1px solid transparent;border-radius:9px;background:#fff;color:var(--role-ink);cursor:pointer;font:inherit;font-size:calc(12px * var(--type-scale, 1));font-weight:750;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.mock-role-tab[data-role=state_planner]{--role: #2c67ac;--role-soft: #eaf3ff;--role-ink: #174b85}.mock-role-tab[data-role=ulb_engineer]{--role: #147d76;--role-soft: #e8f6f2;--role-ink: #0b5e58}.mock-role-tab[data-role=ward_operator]{--role: #c76c1d;--role-soft: #fff1e4;--role-ink: #91440e}.mock-role-tab[data-role=authenticated_reviewer]{--role: #8553a5;--role-soft: #f5edfb;--role-ink: #603679}.mock-role-tab:hover:not(:disabled){color:var(--role-ink);border-color:var(--role);background:var(--role-soft);transform:translateY(-1px)}.mock-role-tab:focus-visible{outline:3px solid #103652;outline-offset:2px}.mock-role-tab.selected{color:#fff;border-color:var(--role);background:var(--role);box-shadow:0 5px 12px color-mix(in srgb,var(--role) 32%,transparent)}.mock-role-tab:disabled{cursor:wait;opacity:.62}.mock-role-preview{display:grid;gap:12px;margin-top:16px;padding:16px;border:1px solid var(--mock-role-line);border-left:4px solid var(--mock-role);border-radius:12px;background:var(--mock-role-soft)}.mock-role-preview-head{display:flex;align-items:center;gap:10px}.mock-role-avatar{display:grid;flex:0 0 auto;width:40px;height:40px;place-items:center;border:1px solid var(--mock-role-line);border-radius:50%;background:#fff;color:var(--mock-role)}.mock-role-preview-head p{margin:0;color:var(--mock-role-dark);font-size:calc(10px * var(--type-scale, 1));font-weight:750;letter-spacing:.08em;text-transform:uppercase}.mock-role-preview h2{margin:2px 0 0;color:#103652;font-size:calc(18px * var(--type-scale, 1));font-weight:700;letter-spacing:-.025em}.mock-role-preview>p{margin:0;color:#365a5b;font-size:calc(12px * var(--type-scale, 1));line-height:1.5}.mock-role-preview-detail{color:var(--mock-role-dark);font-size:calc(11px * var(--type-scale, 1));font-weight:750;letter-spacing:.04em;text-transform:uppercase}.demo-login-form{margin-top:17px}.demo-login-form label{margin-top:8px;color:#345b57;font-size:calc(12px * var(--type-scale, 1));font-weight:700}.demo-login-form .input-wrap{border-color:#cbded6;background:#fbfdfb}.demo-login-form .input-wrap:focus-within{border-color:var(--mock-role);box-shadow:0 0 0 3px color-mix(in srgb,var(--mock-role) 16%,transparent)}.demo-login-form .input-wrap input{color:#173f45}.demo-login-form .button{margin-top:12px}.mock-login-continue{min-height:48px;margin-top:16px;background:var(--mock-role);box-shadow:0 8px 18px color-mix(in srgb,var(--mock-role) 28%,transparent)}.mock-login-continue.button-primary:hover:not(:disabled){background:var(--mock-role-dark)}.demo-credentials{display:grid;gap:12px;margin-top:20px;padding:15px 16px;border:1px solid #cbded6;border-radius:12px;background:#f4faf6}.demo-credentials-head{display:flex;align-items:flex-start;gap:9px;color:var(--mock-role-dark)}.demo-credentials-head svg{flex:0 0 auto;margin-top:1px;color:var(--mock-role)}.demo-credentials-head div{display:grid;gap:2px}.demo-credentials-head strong{color:#173f45;font-size:calc(12px * var(--type-scale, 1))}.demo-credentials-head span{color:#52716a;font-size:calc(11px * var(--type-scale, 1));line-height:1.4}.demo-credentials dl{display:grid;gap:7px;margin:0;padding-top:11px;border-top:1px solid #d9e9e1}.demo-credentials dl div{display:grid;grid-template-columns:68px minmax(0,1fr);gap:10px;align-items:baseline}.demo-credentials dt{color:#52716a;font-size:calc(11px * var(--type-scale, 1));font-weight:750}.demo-credentials dd{min-width:0;margin:0;overflow-wrap:anywhere;color:#173f45;font-size:calc(11px * var(--type-scale, 1));font-weight:650}.demo-credentials code{color:var(--mock-role-dark);font:inherit;font-weight:800;letter-spacing:.06em}.mock-login-card .auth-provider-note{margin-top:17px;padding-top:15px;border-color:#dce7e2}.mock-login-card .auth-provider-note svg{color:var(--mock-role)}.role-help-scrim{position:fixed;z-index:70;inset:0;display:flex;align-items:center;justify-content:center;padding:18px;background:#04122e9e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.role-help-dialog{display:grid;gap:15px;width:min(680px,100%);max-height:min(720px,calc(100dvh - 36px));overflow-y:auto;padding:20px;border:1px solid #c7dcd4;border-radius:16px;background:#fff;box-shadow:0 26px 70px #041d304d}.role-help-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.role-help-head h2{margin:2px 0 0;color:#103652;font-size:calc(21px * var(--type-scale, 1));font-weight:720;letter-spacing:-.035em}.role-help-kicker{margin:0;color:#147d76;font-size:calc(10px * var(--type-scale, 1));font-weight:800;letter-spacing:.12em;text-transform:uppercase}.role-help-list{display:grid;gap:10px}.role-help-item{--role: #147d76;--role-dark: #0b5e58;--role-soft: #e8f6f2;--role-line: #a7d6ca;display:grid;gap:10px;padding:13px;border:1px solid var(--role-line);border-left:4px solid var(--role);border-radius:11px;background:var(--role-soft)}.role-help-item[data-role=state_planner]{--role: #2c67ac;--role-dark: #164982;--role-soft: #ebf3ff;--role-line: #b9d2ef}.role-help-item[data-role=ulb_engineer]{--role: #147d76;--role-dark: #0b5e58;--role-soft: #e8f6f2;--role-line: #a7d6ca}.role-help-item[data-role=ward_operator]{--role: #c76c1d;--role-dark: #91440e;--role-soft: #fff1e4;--role-line: #f0c69c}.role-help-item[data-role=authenticated_reviewer]{--role: #8553a5;--role-dark: #603679;--role-soft: #f5edfb;--role-line: #ddc4eb}.role-help-item-head{display:flex;align-items:center;gap:9px;min-width:0}.role-help-icon{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;color:var(--role);border:1px solid var(--role-line);border-radius:50%;background:#fff}.role-help-item-head h3{margin:0;color:#103652;font-size:calc(14px * var(--type-scale, 1));font-weight:750}.role-help-item-head>div{display:grid;gap:2px;min-width:0}.role-help-item-head>div>span{overflow-wrap:anywhere;color:var(--role-dark);font-size:calc(11px * var(--type-scale, 1));line-height:1.35}.role-help-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.role-help-facts div{min-width:0}.role-help-facts dt{margin-bottom:3px;color:var(--role-dark);font-size:calc(10px * var(--type-scale, 1));font-weight:800;letter-spacing:.08em;text-transform:uppercase}.role-help-facts dd{margin:0;color:#365a5b;font-size:calc(11px * var(--type-scale, 1));line-height:1.45}@media(prefers-reduced-motion:reduce){.login-intro,.login-card{animation:none}.mock-role-tab,.role-help-trigger{transition:none}}@media(max-width:980px){.mock-auth-page .auth-header .back-link{color:#526a62}}@media(max-width:720px){.mock-login-layout{min-height:calc(100dvh - 68px);padding-top:18px;padding-bottom:28px}.mock-login-card{border-radius:14px}.mock-login-banner{min-height:108px;padding:18px 20px}.mock-login-banner h1{font-size:calc(25px * var(--type-scale, 1))}.mock-login-watermark{width:50px;height:50px}.mock-login-card-body{padding:18px}.mock-role-preview,.demo-credentials{padding:14px}.role-help-scrim{padding:10px}.role-help-dialog{max-height:calc(100dvh - 20px);padding:16px;border-radius:13px}.role-help-facts{grid-template-columns:1fr;gap:8px}}.timeline-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:26px;margin-top:22px}.timeline-block{min-width:0}.timeline-heading{display:flex;align-items:center;gap:8px;margin:0 0 14px;padding-bottom:9px;border-bottom:2px solid var(--view-accent);color:var(--indigo-deep);font-size:calc(13px * var(--type-scale, 1));font-weight:800;letter-spacing:.09em;text-transform:uppercase}.timeline-heading svg{color:var(--view-accent)}.timeline{display:grid;gap:0;margin:0;padding:0;list-style:none}.timeline-step{position:relative;display:grid;grid-template-columns:34px 1fr;gap:14px;padding:0 0 20px}.timeline-step:before{content:"";position:absolute;left:16px;top:30px;bottom:0;width:2px;background:var(--line)}.timeline-step:last-child{padding-bottom:0}.timeline-step:last-child:before{display:none}.timeline-marker{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:2px solid var(--line);background:#fff;color:var(--muted);z-index:1}.timeline-step.is-done .timeline-marker{border-color:var(--view-accent);background:var(--view-wash);color:var(--view-accent)}.timeline-step.is-done:before{background:var(--view-accent);opacity:.35}.timeline-step.is-current .timeline-marker{border-color:var(--view-accent);background:var(--view-accent);color:#fff;box-shadow:0 0 0 5px var(--view-wash)}.timeline-step.is-next .timeline-marker{border-style:dashed}.timeline-body{min-width:0;padding-top:3px}.timeline-when{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 4px;color:var(--muted);font-size:calc(11.5px * var(--type-scale, 1))}.timeline-when strong{color:var(--view-accent);font-weight:800;letter-spacing:.02em}.timeline-body h4{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 5px;color:var(--indigo-deep);font-size:calc(16px * var(--type-scale, 1));font-weight:700}.timeline-note{padding:2px 8px;border-radius:999px;background:var(--view-wash);color:var(--view-accent);font-size:calc(10.5px * var(--type-scale, 1));font-weight:700;letter-spacing:.07em;text-transform:uppercase}.timeline-detail{margin:0;color:var(--ink-soft);font-size:calc(13.5px * var(--type-scale, 1));line-height:1.55}.timeline-step.is-next .timeline-body h4{color:var(--ink-soft)}.engagement-signature{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:26px;padding:18px 20px;border:1px solid var(--line);border-left:4px solid var(--view-accent);border-radius:10px;background:linear-gradient(120deg,#ffffff,var(--view-wash))}.engagement-eyebrow{margin:0 0 3px;color:var(--muted);font-size:calc(10.5px * var(--type-scale, 1));font-weight:700;letter-spacing:.12em;text-transform:uppercase}.engagement-signature strong{display:block;color:var(--indigo-deep);font-size:calc(20px * var(--type-scale, 1));font-weight:800;letter-spacing:-.01em}.engagement-signature span{display:block;margin-top:3px;color:var(--ink-soft);font-size:calc(13px * var(--type-scale, 1))}.timeline-rule{position:relative;display:flex;align-items:center;padding:0 0 16px 48px}.timeline-rule:before{content:"";position:absolute;left:16px;top:0;bottom:0;width:2px;background:var(--view-accent);opacity:.35}.timeline-rule-next:before{background:var(--line)}.timeline-rule span{display:inline-flex;align-items:center;gap:6px;color:var(--view-accent);font-size:calc(11px * var(--type-scale, 1));font-weight:800;letter-spacing:.12em;text-transform:uppercase}.timeline-rule-next span{color:var(--muted)}.timeline{max-width:760px;margin-top:24px}
