@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-vietnamese-500-normal-KzgY4ehc.woff2) format("woff2"),url(/assets/archivo-vietnamese-500-normal-D54XtGth.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:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-latin-ext-500-normal-20LYvI4q.woff2) format("woff2"),url(/assets/archivo-latin-ext-500-normal-DDNBwN69.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-latin-500-normal-DfoyCuDs.woff2) format("woff2"),url(/assets/archivo-latin-500-normal-Czl1wHVU.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-vietnamese-600-normal-WKrb2xyM.woff2) format("woff2"),url(/assets/archivo-vietnamese-600-normal-CPu7GLUO.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:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-latin-ext-600-normal-wFtfyY2B.woff2) format("woff2"),url(/assets/archivo-latin-ext-600-normal-b2XDan_m.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-latin-600-normal-LRtvZSEy.woff2) format("woff2"),url(/assets/archivo-latin-600-normal-BL_jIsqD.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-vietnamese-700-normal-CTdTbJUo.woff2) format("woff2"),url(/assets/archivo-vietnamese-700-normal-CsX6W_nG.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:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-latin-ext-700-normal-ByirIPFe.woff2) format("woff2"),url(/assets/archivo-latin-ext-700-normal-C5i7Nrhe.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-latin-700-normal-BvQHTehp.woff2) format("woff2"),url(/assets/archivo-latin-700-normal-BHohDsLw.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+2074,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:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-B3hZxag_.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-ZyMXPjaT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,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-DvQQgHTq.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CJUKFyLa.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-BFiUPp6R.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DLynVohM.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-DxDDqVQb.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-uwM7KshN.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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-Dm_PoFIZ.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-O6-GRVqx.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+2074,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:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-CmcxpzmF.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-yqk7_qG0.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,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:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-BtGHVI3Q.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-N1TV9ACq.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:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-CevHOlzG.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-QhwQXayn.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:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-Dn-cqWhb.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-BhDX_RLI.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:500;src:url(/assets/ibm-plex-mono-latin-500-normal-C_OblDzq.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-zoSM89R3.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/public-sans-vietnamese-400-normal-fzCEYZwl.woff2) format("woff2"),url(/assets/public-sans-vietnamese-400-normal-BwEUXHEY.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:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/public-sans-latin-ext-400-normal-L5ZQyZX_.woff2) format("woff2"),url(/assets/public-sans-latin-ext-400-normal-BwKz5AeH.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/public-sans-latin-400-normal-D4F9yfFi.woff2) format("woff2"),url(/assets/public-sans-latin-400-normal-D4vgG6SW.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/public-sans-vietnamese-500-normal-sPpfk_yB.woff2) format("woff2"),url(/assets/public-sans-vietnamese-500-normal-BKNWXH7D.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:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/public-sans-latin-ext-500-normal-DP9Whp7X.woff2) format("woff2"),url(/assets/public-sans-latin-ext-500-normal-DC3-YAa0.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/public-sans-latin-500-normal-ChZcBEnJ.woff2) format("woff2"),url(/assets/public-sans-latin-500-normal-DCQow-rA.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/public-sans-vietnamese-600-normal-BoVp2IRl.woff2) format("woff2"),url(/assets/public-sans-vietnamese-600-normal-CCLjVCWZ.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:Public Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/public-sans-latin-ext-600-normal-BOqTAvMD.woff2) format("woff2"),url(/assets/public-sans-latin-ext-600-normal-WBZG7A5n.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Public Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/public-sans-latin-600-normal-Ck6TyfRI.woff2) format("woff2"),url(/assets/public-sans-latin-600-normal-BX0BwxVl.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/public-sans-vietnamese-700-normal-Cjcf1M5d.woff2) format("woff2"),url(/assets/public-sans-vietnamese-700-normal-Czg5uTnZ.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:Public Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/public-sans-latin-ext-700-normal-DQeElHWA.woff2) format("woff2"),url(/assets/public-sans-latin-ext-700-normal-BPjagB3u.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Public Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/public-sans-latin-700-normal-CGjRhW-d.woff2) format("woff2"),url(/assets/public-sans-latin-700-normal-DFbs-ESy.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f4f6f9;--panel: #ffffff;--panel-2: #f8fafc;--line: #e2e7ed;--line-2: #c9d2dc;--ink: #0f1e2e;--ink-2: #3a4a5c;--ink-3: #5e6e81;--accent: #1f5fa8;--accent-ink: #ffffff;--accent-2: #164a85;--accent-soft: #e7eff9;--side: #ffffff;--side-ink: #0f1e2e;--side-ink-2: #46586c;--side-line: #e2e7ed;--side-active: #e7eff9;--side-mark: #1f5fa8;--topbar: rgba(255, 255, 255, .95);--ov: rgba(255, 255, 255, .93);--ov-ink: #0f1e2e;--ov-ink-2: #3a4a5c;--ov-line: rgba(15, 30, 46, .12);--ov-accent: #1f5fa8;--seq-1: #e6eef7;--seq-2: #b7cce4;--seq-3: #7ea2cb;--seq-4: #3e71ac;--seq-5: #17457e;--risk-low: #cdd8e4;--risk-low-line: #7f94aa;--risk-mid: #e3a63e;--risk-mid-line: #a97a28;--risk-high: #c8472f;--risk-high-line: #8a2e1c;--lvl-f-bg: #edf2f7;--lvl-f-ink: #24364a;--lvl-m-bg: #fcefd8;--lvl-m-ink: #6b4510;--lvl-e-bg: #f9e2dc;--lvl-e-ink: #8a2e1c;--water: #2f86d6;--ems: #d9831f;--ok: #2e7d50;--ok-soft: #e3f2e9;--warn-soft: #fbf0dc;--warn-ink: #6b4510;--il-sky: #eaf1f9;--il-ground: #d9e1ea;--il-dark: #1a2b3e;--il-body: #ffffff;--display: "Archivo", "Segoe UI", sans-serif;--font: "Public Sans", "Segoe UI", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "Cascadia Mono", monospace;--r: 6px;--side-w: 232px}:root[data-theme=b]{--side: #0b1f3a;--side-ink: #ffffff;--side-ink-2: #b9c7d9;--side-line: #1b3355;--side-active: #17345e;--side-mark: #7db8f2;--accent: #0f5bb5;--accent-2: #0b4790;--accent-soft: #e6effa;--ov: rgba(11, 31, 58, .88);--ov-ink: #ffffff;--ov-ink-2: #c9d5e4;--ov-line: rgba(255, 255, 255, .18);--ov-accent: #7db8f2}:root[data-theme=c]{--bg: #f6f3ec;--panel: #ffffff;--panel-2: #faf8f3;--line: #e6e0d4;--line-2: #d2c9b8;--ink: #1b2530;--ink-2: #44505c;--ink-3: #66707b;--accent: #0e6b78;--accent-2: #0a535d;--accent-soft: #e2f0f1;--side: #fbf9f4;--side-ink: #1b2530;--side-ink-2: #4e5964;--side-line: #e6e0d4;--side-active: #e2f0f1;--side-mark: #0e6b78;--topbar: rgba(251, 249, 244, .95);--ov: rgba(251, 249, 244, .94);--ov-accent: #0e6b78;--seq-1: #e3f0ef;--seq-2: #b2d7d7;--seq-3: #72b4b8;--seq-4: #2e8890;--seq-5: #0d5660;--il-sky: #eef4f2;--il-ground: #e4dccb}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0}body{font-family:var(--font);font-size:14.5px;line-height:1.5;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-2);text-decoration:underline}h1,h2,h3,h4{margin:0;font-family:var(--display);font-weight:600;letter-spacing:.01em}p{margin:0}.mono{font-family:var(--mono);font-feature-settings:"tnum" 1}.muted{color:var(--ink-3)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app{display:flex;min-height:100vh}.side{width:var(--side-w);flex:none;background:var(--side);color:var(--side-ink-2);border-right:1px solid var(--side-line);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:10px;padding:18px;border-bottom:1px solid var(--side-line);color:var(--side-ink)}.brand:hover{text-decoration:none;color:var(--side-ink)}.brand-mark{width:28px;height:28px;flex:none}.brand-mark .m1{stroke:var(--side-mark)}.brand-mark .m2{stroke:var(--side-ink)}.brand-name{font-family:var(--display);font-weight:700;font-size:19px;letter-spacing:.03em}.brand-sub{font-size:11.5px;color:var(--side-ink-2);display:block;line-height:1.2;letter-spacing:.04em}.nav{padding:10px 10px 20px;display:flex;flex-direction:column;gap:2px}.nav-group{font-family:var(--display);font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--side-ink-2);opacity:.85;padding:16px 10px 6px}.nav a{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 10px;border-radius:var(--r);color:var(--side-ink-2);font-size:14px}.nav a:hover{background:var(--side-active);color:var(--side-ink);text-decoration:none}.nav a[aria-current=page]{background:var(--side-active);color:var(--side-ink);font-weight:600;box-shadow:inset 3px 0 0 var(--side-mark)}.nav a[aria-current=page] svg{stroke:var(--side-mark)}.nav svg{width:18px;height:18px;flex:none;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.side-foot{margin-top:auto;padding:14px 18px;border-top:1px solid var(--side-line);font-size:11.5px;color:var(--side-ink-2);line-height:1.5}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:58px;background:var(--topbar);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:0 28px;position:sticky;top:0;z-index:900}.menu-btn{display:none}.crumbs{font-size:13.5px;color:var(--ink-3);display:flex;gap:8px;align-items:center;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crumbs strong{color:var(--ink);font-weight:600}.top-right{margin-left:auto;display:flex;align-items:center;gap:14px}.status{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-3);white-space:nowrap;font-family:var(--mono)}.dot{width:7px;height:7px;border-radius:50%;background:var(--ok);flex:none;box-shadow:0 0 0 3px var(--ok-soft)}.seg{display:inline-flex;border:1px solid var(--line-2);border-radius:var(--r);overflow:hidden;background:var(--panel)}.seg button{font:inherit;font-size:13px;border:0;background:transparent;color:var(--ink-2);padding:0 12px;min-height:34px;cursor:pointer}.seg button+button{border-left:1px solid var(--line-2)}.seg button[aria-pressed=true],.seg button[aria-selected=true],.seg button[aria-checked=true]{background:var(--accent);color:var(--accent-ink);font-weight:600}.select{font:inherit;font-size:13.5px;color:var(--ink);background-color:var(--panel);border:1px solid var(--line-2);border-radius:var(--r);min-height:36px;padding:0 30px 0 10px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%235E6E81' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.content{padding:26px 28px;display:flex;flex-direction:column;gap:22px;max-width:1520px;width:100%}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 32px}.page-head h1{font-size:34px;line-height:1.08}.page-head p{color:var(--ink-2);max-width:720px;margin-top:8px;font-size:14.5px}.eyebrow{font-family:var(--display);font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.grid{display:grid;gap:18px}.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1fr) 380px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);min-width:0;overflow:hidden}.panel-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;border-bottom:1px solid var(--line);min-height:50px;flex-wrap:wrap}.panel-h h2{font-size:17px;letter-spacing:.02em}.panel-h .meta{font-size:12.5px;color:var(--ink-3)}.panel-b{padding:18px}.panel-f{padding:10px 18px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-3);display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center}.kpi{padding:16px 18px;display:flex;flex-direction:column;gap:4px;position:relative}.kpi-label{font-family:var(--display);font-size:12.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.kpi-value{font-family:var(--mono);font-size:32px;font-weight:500;letter-spacing:-.02em;color:var(--ink);line-height:1.15}.kpi-value small{font-family:var(--font);font-size:14px;color:var(--ink-3);font-weight:400;margin-left:4px;letter-spacing:0}.kpi-note{font-size:12.5px;color:var(--ink-2)}.dl{display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,auto);margin:0}.dl dt,.dl dd{padding:9px 0;border-bottom:1px solid var(--line);margin:0;font-size:14px}.dl dt{color:var(--ink-2)}.dl dd{font-family:var(--mono);font-size:13.5px;text-align:right;color:var(--ink);overflow-wrap:anywhere;padding-left:12px}.dl>:nth-last-child(-n+2){border-bottom:0}.table-wrap{overflow-x:auto}table.t{width:100%;border-collapse:collapse;font-size:14px}.t thead th{text-align:left;font-family:var(--display);font-weight:600;font-size:12px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.1em;padding:10px 14px;border-bottom:1px solid var(--line-2);background:var(--panel-2);white-space:nowrap}.t td,.t tbody th{padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:middle;text-align:left;font-weight:400;color:var(--ink-2)}.t tbody th{font-weight:600;color:var(--ink)}.t tr:last-child td,.t tr:last-child th{border-bottom:0}.t .num{text-align:right;font-family:var(--mono);font-size:13px;white-space:nowrap;color:var(--ink)}.t thead th.num{font-family:var(--display);font-size:12px;color:var(--ink-3)}.t tbody tr.sel{background:var(--accent-soft)}.t tbody tr.sel th{box-shadow:inset 3px 0 0 var(--accent)}.t tbody tr.click{cursor:pointer}.t tbody tr.click:hover{background:var(--panel-2)}.bar{height:6px;background:var(--line);border-radius:3px;overflow:hidden;min-width:60px}.bar>span{display:block;height:100%;background:var(--accent)}.barcell{display:flex;align-items:center;gap:10px}.barcell .bar{flex:1}.btn{font:inherit;font-size:14px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 16px;border-radius:var(--r);border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);cursor:pointer}.btn:hover{background:var(--accent-2);border-color:var(--accent-2);color:var(--accent-ink);text-decoration:none}.btn.sec{background:var(--panel);color:var(--accent);border-color:var(--line-2)}.btn.sec:hover{border-color:var(--accent)}.btn.ghost{background:transparent;border-color:transparent;color:var(--accent);padding:0 8px}.btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);flex-wrap:wrap}.tabs button{font:inherit;font-size:14px;color:var(--ink-3);background:transparent;border:0;border-bottom:2px solid transparent;padding:0 14px;min-height:44px;cursor:pointer;margin-bottom:-1px}.tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:2px 8px;border-radius:4px;white-space:nowrap;line-height:1.6}.tag.ok{background:var(--ok-soft);color:var(--ok)}.tag.warn{background:var(--warn-soft);color:var(--warn-ink)}.tag.info{background:var(--accent-soft);color:var(--accent)}.tag.neutral{background:var(--panel-2);color:var(--ink-2);border:1px solid var(--line-2)}.lvl{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;padding:2px 9px 2px 3px;border-radius:4px;white-space:nowrap;line-height:1.6}.lvl i{width:16px;height:14px;border-radius:2px;display:inline-block;flex:none}.lvl.faible{background:var(--lvl-f-bg);color:var(--lvl-f-ink)}.lvl.modere{background:var(--lvl-m-bg);color:var(--lvl-m-ink)}.lvl.eleve{background:var(--lvl-e-bg);color:var(--lvl-e-ink)}.sw-faible{background:radial-gradient(var(--risk-low-line) .9px,var(--risk-low) 1.2px) 0 0 / 4px 4px;border:1px solid var(--risk-low-line)}.sw-modere{background:repeating-linear-gradient(45deg,var(--risk-mid-line) 0 1.5px,var(--risk-mid) 1.5px 4.5px);border:1px solid var(--risk-mid-line)}.sw-eleve{background:repeating-linear-gradient(45deg,var(--risk-high-line) 0 1.5px,var(--risk-high) 1.5px 3.5px);border:1px solid var(--risk-high-line)}.lvl-word.faible{color:var(--lvl-f-ink)}.lvl-word.modere{color:var(--lvl-m-ink)}.lvl-word.eleve{color:var(--lvl-e-ink)}.legend{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;font-size:12.5px;color:var(--ink-2)}.legend span{display:inline-flex;align-items:center;gap:7px}.legend i{width:18px;height:12px;border-radius:2px;display:inline-block}.ramp{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-3);font-family:var(--mono)}.ramp-bar{display:flex;height:10px;width:180px;border-radius:2px;overflow:hidden}.ramp-bar i{flex:1}.ramp-bar i:nth-child(1){background:var(--seq-1)}.ramp-bar i:nth-child(2){background:var(--seq-2)}.ramp-bar i:nth-child(3){background:var(--seq-3)}.ramp-bar i:nth-child(4){background:var(--seq-4)}.ramp-bar i:nth-child(5){background:var(--seq-5)}.notice{display:flex;gap:12px;align-items:flex-start;padding:11px 16px;border-radius:var(--r);font-size:14px;line-height:1.5;border:1px solid}.notice svg{width:18px;height:18px;flex:none;margin-top:2px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.notice.warn{background:var(--warn-soft);border-color:#e8cfa2;color:var(--warn-ink)}.notice.info{background:var(--accent-soft);border-color:var(--line-2);color:var(--accent-2)}.map{width:100%;height:560px;background:#e9edf1}.map.dark{background:#0e1218}.panel.fill{display:flex;flex-direction:column}.panel.fill .map{flex:1;min-height:420px;height:auto}.leaflet-container{font-family:var(--font)}.leaflet-control-attribution{font-size:10.5px!important}.leaflet-bar a{color:var(--ink)!important}.map-tip{font-family:var(--font);font-size:12.5px;line-height:1.45}.map-tip b{font-weight:600}.map-label-q{color:#fff;font-family:var(--display);font-weight:600;font-size:12.5px;letter-spacing:.03em;text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 2px rgba(0,0,0,.8);white-space:nowrap}.field{display:flex;flex-direction:column;gap:6px;font-family:var(--display);font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.input{font:inherit;font-size:14.5px;font-weight:400;color:var(--ink);background:var(--panel);border:1px solid var(--line-2);border-radius:var(--r);min-height:40px;padding:0 12px;letter-spacing:0;text-transform:none}.input:focus,.select:focus,.btn:focus-visible,.seg button:focus-visible,.tabs button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.check{display:flex;align-items:center;gap:10px;font-size:14px;min-height:36px;cursor:pointer;color:var(--ink-2)}.check input{width:17px;height:17px;accent-color:var(--accent);margin:0}.chart{position:relative}.chart-cols{display:flex;align-items:flex-end;gap:2px;height:150px;border-bottom:1px solid var(--line-2)}.chart-cols i{flex:1;background:var(--accent);min-height:1px;display:block}.chart-axis{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--ink-3);margin-top:6px}.chart-line{height:70px;width:100%;display:block}.illu{width:100%;height:auto;display:block}.illu text{font-family:var(--display);fill:var(--ink-3)}.illu .sky{fill:var(--il-sky)}.illu .ground{fill:var(--il-ground)}.illu .dark{fill:var(--il-dark)}.illu .body{fill:var(--il-body);stroke:var(--accent)}.illu .acc{stroke:var(--accent)}.illu .accf{fill:var(--accent)}.illu .water{stroke:var(--water)}.illu .line{stroke:var(--line-2)}.illu .q1{fill:var(--seq-1)}.illu .q2{fill:var(--seq-2)}.illu .q3{fill:var(--seq-3)}.illu .q4{fill:var(--seq-4)}.illu .q5{fill:var(--seq-5)}.pictos{display:inline-flex;gap:1px;flex-wrap:wrap}.icard{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r);background:var(--panel)}.icard .ic{width:42px;height:42px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;flex:none}.icard .ic.warm{background:var(--lvl-m-bg);color:var(--lvl-m-ink)}.icard .ic.hot{background:var(--lvl-e-bg);color:var(--lvl-e-ink)}.icard b{display:block;font-family:var(--display);font-size:16px;font-weight:600;letter-spacing:.02em}.icard .v{font-family:var(--mono);font-size:20px;color:var(--ink)}.icard small{color:var(--ink-3);font-size:12.5px;display:block}.rings{display:flex;gap:10px;flex-wrap:wrap;justify-content:space-around}.rings figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:6px;width:100px}.rings figcaption{font-family:var(--display);font-size:12.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);text-align:center}.kpi .kpi-ic{position:absolute;right:16px;top:16px;width:38px;height:38px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.tile{border-radius:var(--r);padding:10px 12px;min-height:64px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line)}.tile b{font-size:13px;font-weight:600;line-height:1.25}.tile span{font-family:var(--mono);font-size:12px}.tile.eleve{background:repeating-linear-gradient(45deg,rgba(138,46,28,.08) 0 2px,transparent 2px 7px),var(--lvl-e-bg);border-color:#ebc3b8;color:var(--lvl-e-ink)}.tile.modere{background:repeating-linear-gradient(45deg,rgba(169,122,40,.1) 0 2px,transparent 2px 8px),var(--lvl-m-bg);border-color:#ebd3a8;color:var(--lvl-m-ink)}.tile.faible{background:var(--lvl-f-bg);color:var(--lvl-f-ink)}.footer{padding:18px 28px 26px;font-size:11.5px;color:var(--ink-3);border-top:1px solid var(--line);margin-top:auto;line-height:1.6}body.capture .app{min-height:0}body.capture .topbar{position:relative}@media (min-width: 901px){body.capture .side{position:relative;height:auto}}@media (max-width: 1180px){.g-main{grid-template-columns:minmax(0,1fr)}.g-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.side{position:fixed;left:0;top:0;z-index:1000;transform:translate(-100%);transition:transform .2s ease}.side.open{transform:none;box-shadow:0 0 0 100vmax #0f1e2e73}.menu-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line-2);border-radius:var(--r);background:var(--panel);cursor:pointer;flex:none}.menu-btn svg{width:18px;height:18px;stroke:var(--ink);fill:none;stroke-width:1.8;stroke-linecap:round}.topbar{padding:0 16px;gap:10px}.status{display:none}.content{padding:18px 16px;gap:16px}.g-2,.g-3{grid-template-columns:minmax(0,1fr)}.page-head h1{font-size:27px}.map{height:420px}.footer{padding:16px}}@media (max-width: 520px){.g-4{grid-template-columns:minmax(0,1fr)}.top-right .select{display:none}.kpi-value{font-size:27px}}.g-synth{grid-template-columns:300px minmax(0,1fr) minmax(0,1.25fr)}@media (max-width: 1180px){.g-synth{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.g-synth{grid-template-columns:minmax(0,1fr)}}.maplibregl-map{font-family:var(--font)}.carte{position:relative;width:100%;height:100%;min-height:420px}.carte-attrib{position:absolute;right:0;bottom:0;z-index:2;font-size:10.5px;background:#ffffffd9;color:var(--ink-2);padding:1px 6px}.etat{padding:18px;color:var(--ink-3);font-size:14px;display:flex;align-items:center;gap:10px}.etat.erreur{color:var(--warn-ink);background:var(--warn-soft);border-radius:var(--r)}.skel{background:linear-gradient(90deg,var(--line) 0,var(--panel-2) 40%,var(--line) 80%);border-radius:3px;height:12px}.swipe{position:relative;overflow:hidden}.swipe .couche{position:absolute;top:0;right:0;bottom:0;left:0}.swipe .ligne{position:absolute;top:0;bottom:0;width:2px;background:#fff;z-index:5;pointer-events:none}.swipe .etiquette{position:absolute;top:12px;z-index:6;font-size:12.5px;font-weight:600;padding:4px 9px;border-radius:4px;pointer-events:none}.btn-lien{background:none;border:0;padding:0;font:inherit;color:var(--accent);cursor:pointer}.calques{position:absolute;left:10px;bottom:30px;margin:0;padding:8px 12px 10px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 2px 10px #0b1f3a1f;display:flex;flex-direction:column;gap:4px;font-size:13px;max-width:220px}.calques legend{padding:0 4px;font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}.calques label{display:flex;gap:8px;align-items:center;cursor:pointer}.vignette{display:block;position:relative;height:190px;border-radius:8px;overflow:hidden;background:var(--panel-2);border:1px solid var(--line);color:var(--ink);text-decoration:none}.vignette img{width:100%;height:100%;object-fit:cover;display:block}.vignette-legende{position:absolute;left:8px;right:8px;bottom:8px;padding:6px 9px;border-radius:6px;background:#0b1f3ad1;font-size:12.5px}.vignette.vide{display:flex;align-items:center;padding:16px;font-size:13px;color:var(--ink-2)}.vignette:hover{border-color:var(--accent)}.service{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-2);white-space:nowrap}.service i{width:8px;height:8px;border-radius:50%}.service.ok i{background:var(--turq, #1fb5a5)}.service.ko i{background:var(--risk-high)}@media (max-width: 720px){.service{display:none}}
