:root{--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--r-sm: 9px;--r-ctl: 12px;--r-card: 20px;--r-pill: 999px;--r-xs: 5px;--fs-caption: 12px;--fs-sm: 13.5px;--fs-base: 15px;--fs-md: 16px;--fs-lg: 18px;--fs-xl: 22.5px;--fs-2xl: 29px;--fs-3xl: 36.5px;--fs-hero: 56px;--fs-titre-page: clamp(26px, 2.6vw, 38px);--ctl-h-xs: 28px;--ctl-h-sm: 32px;--ctl-h-md: 40px;--ctl-h-lg: 48px;--lh-base: 1.55;--lh-tight: 1.1;--lh-flat: 1;--layout-liste-w-etroit: 280px;--layout-liste-w-large: 320px;--layout-detail-w-etroit: 420px;--layout-detail-w-large: 560px;--layout-col-pad-x: 24px;--layout-col-pad-y: 20px;--layout-col-pad-mobile: 16px;--layout-bloc-pad-x: 20px;--layout-bloc-pad-y: 16px;--bg: #f7f5f0;--panel: #ffffff;--card: #ffffff;--surface-contenu: #fbfaf7;--surface-soft: rgba(23, 21, 31, .03);--surface-soft-hover: rgba(23, 21, 31, .07);--surface-soft-pressed: rgba(23, 21, 31, .08);--kbd-bg: rgba(23, 21, 31, .06);--glass-bg: rgba(255, 255, 255, .6);--switch-off: rgba(23, 21, 31, .34);--switch-off-hover: rgba(23, 21, 31, .44);--ink: #17151f;--ink-2: #6f6a7a;--ink-3: #9a9388;--ink-inverse: #ffffff;--btn-ghost-ink: #3c4658;--line: rgba(23, 21, 31, .08);--line-strong: rgba(23, 21, 31, .16);--line-focus: #9aa4bd;--glass-border: rgba(255, 255, 255, .72);--accent: #3f2e8c;--accent-dark: #211a4d;--accent-pressed: #2e2358;--accent-soft: #eeeaf8;--accent-soft-hover: #e1d9f0;--accent-soft-pressed: #ccc1e4;--command: #211a4d;--command-2: #2e2358;--coral: #f26a3d;--coral-dark: #c94e2a;--amber: #f4b35e;--coral-soft: #ffe7dd;--coral-ink: #a04022;--danger: #e7000b;--danger-hover: #c10007;--danger-pressed: #9f0712;--danger-ink: #c10007;--danger-soft: #fef2f2;--danger-soft-hover: #ffe2e2;--danger-soft-pressed: #ffc9c9;--st-none: #e7e1d8;--st-contact: #7b839c;--st-win: #2e9b72;--st-win-hover: #38855e;--st-win-pressed: #2c6a4a;--st-win-ink: #2c6a4a;--st-win-soft: #ddf3e6;--st-win-soft-hover: #c1e5cf;--st-win-soft-pressed: #9ad3b1;--st-yes: #009ec4;--st-yes-soft: #cef4ff;--st-yes-ink: #006988;--st-mid: #d39a2f;--st-mid-soft: #ffeacc;--st-mid-ink: #7c5720;--st-no: #c95c52;--st-no-pressed: #99443c;--st-no-ink: #73332d;--st-no-soft: #ffe9e5;--st-no-soft-hover: #fad4cf;--st-no-soft-pressed: #f0bab2;--st-rdv: #7c5cff;--st-rdv-soft: #ece7ff;--st-rdv-ink: #4b3aa8;--nu-nfp: #a6284d;--nu-lfi: #641e30;--nu-union-gauche: #a6284d;--nu-ps: #cd327e;--nu-ecologistes: #427131;--nu-divers-gauche: #cb3d2b;--nu-divers-centre: #f29c25;--nu-ensemble: #eda431;--nu-udi: #3468cd;--nu-divers-droite: #313ea1;--nu-union-droite: #232e88;--nu-rn: #674c3f;--nu-union-ext-droite: #33231f;--nu-divers: #b5b5b5;--nu-inconnue: #d8cec0;--nu-extreme-gauche: #8a1c3b;--nu-extreme-gauche-soft: #efdfe4;--nu-extreme-gauche-ink: #931a3c;--nu-pcf: #d81920;--nu-pcf-soft: #fadfe0;--nu-pcf-ink: #9f0f14;--nu-ecologiste: #6bbf59;--nu-ecologiste-soft: #eaf6e8;--nu-ecologiste-ink: #3d7f2e;--nu-regionaliste: #2aa39a;--nu-regionaliste-soft: #e1f2f1;--nu-regionaliste-ink: #218c84;--nu-renaissance: #ffb800;--nu-renaissance-soft: #fff5db;--nu-renaissance-ink: #ad7d00;--nu-modem: #ff7a00;--nu-modem-soft: #ffecdb;--nu-modem-ink: #ad5300;--nu-horizons: #4f80b3;--nu-horizons-soft: #e6edf4;--nu-horizons-ink: #33567b;--nu-union-centre: #8aa0e0;--nu-union-centre-soft: #eff2fb;--nu-union-centre-ink: #223d8c;--nu-republicains: #1e64c8;--nu-republicains-soft: #dfe9f7;--nu-republicains-ink: #134b9a;--nu-droite-souverainiste: #16266b;--nu-droite-souverainiste-soft: #dee1ea;--nu-droite-souverainiste-ink: #1b3193;--nu-union-droites: #2f3c8f;--nu-union-droites-soft: #e2e4ef;--nu-union-droites-ink: #293585;--nu-reconquete: #1b2a4a;--nu-reconquete-soft: #dfe1e6;--nu-reconquete-ink: #2c4781;--nu-extreme-droite: #2e211c;--nu-extreme-droite-soft: #e2e0df;--nu-extreme-droite-ink: #6d4d41;--nu-lfi-soft: #e9e0e2;--nu-lfi-ink: #5c2533;--nu-nfp-soft: #f3e1e6;--nu-nfp-ink: #94314d;--nu-union-gauche-soft: #f3e1e6;--nu-union-gauche-ink: #94314d;--nu-ps-soft: #f8e2ed;--nu-ps-ink: #9c2160;--nu-ecologistes-soft: #e5ebe2;--nu-ecologistes-ink: #395e2b;--nu-divers-gauche-soft: #f8e4e1;--nu-divers-gauche-ink: #9b2e22;--nu-divers-centre-soft: #fdf1e0;--nu-divers-centre-ink: #7f4800;--nu-ensemble-soft: #fcf2e2;--nu-ensemble-ink: #784b00;--nu-udi-soft: #e3eaf8;--nu-udi-ink: #2452a0;--nu-divers-droite-soft: #e2e4f2;--nu-divers-droite-ink: #3c4493;--nu-union-droite-soft: #e0e2ee;--nu-union-droite-ink: #2d337c;--nu-rn-soft: #eae6e4;--nu-rn-ink: #634e43;--nu-union-ext-droite-soft: #e2e0e0;--nu-union-ext-droite-ink: #312421;--nu-divers-soft: #ededed;--nu-divers-ink: #555555;--success: #2e9b72;--success-hover: #38855e;--success-soft: #ddf3e6;--success-ink: #2c6a4a;--font-text: "neue-haas-grotesk-text", "neue-haas-grotesk-display", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "neue-haas-grotesk-display", "neue-haas-grotesk-text", system-ui, sans-serif;--fw-regular: 400;--fw-medium: 500;--fw-bold: 700;--fw-heavy: 800;--fw-thin: 300;--shadow: 0 1px 2px rgba(33, 26, 77, .02), 0 3px 12px rgba(33, 26, 77, .04);--shadow-lg: 0 18px 46px rgba(4, 10, 24, .16);--glass-blur: blur(16px) saturate(1.3);--focus-ring: 0 0 0 2px var(--panel), 0 0 0 5px rgba(63, 46, 140, .5);--focus-ring-danger: 0 0 0 2px var(--panel), 0 0 0 5px rgba(231, 0, 11, .4);--focus-ring-win: 0 0 0 2px var(--panel), 0 0 0 5px rgba(46, 155, 114, .5)}:root{--sea: rgba(15, 46, 84, .07);--neighbor-fill: rgba(23, 21, 31, .035);--neighbor-line: rgba(23, 21, 31, .22)}*{box-sizing:border-box}html,body{margin:0;max-width:100%;overflow-x:hidden}body{background:var(--bg);color:var(--ink);font-family:var(--font-text);font-size:var(--fs-base);font-weight:var(--fw-regular);line-height:var(--lh-base);-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;text-rendering:optimizeLegibility}.display,h1.display,.hero{font-family:var(--font-display);font-weight:var(--fw-thin);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);font-family:inherit;font-weight:var(--fw-regular);border:1px solid transparent;border-radius:var(--r-pill);cursor:pointer;transition:background .15s,border-color .15s,opacity .15s,transform .05s;white-space:nowrap;text-decoration:none}.ui-btn:active{transform:translateY(1px)}.ui-btn:disabled{opacity:.5;cursor:not-allowed}.ui-btn--md{font-size:var(--fs-base);padding:9px 18px}.ui-btn--sm{font-size:var(--fs-sm);padding:6px 13px}.ui-btn--primary{background:var(--accent);color:#fff}.ui-btn--primary:hover:not(:disabled){background:var(--accent-dark)}.ui-btn--ghost{background:var(--surface-soft);color:var(--btn-ghost-ink)}.ui-btn--ghost:hover:not(:disabled){background:#17151f12}.ui-btn--outline{background:var(--panel);border-color:var(--line);color:var(--ink)}.ui-btn--outline:hover:not(:disabled){border-color:var(--line-strong)}.ui-btn--danger{background:var(--danger);color:#fff}.ui-btn--danger:hover:not(:disabled){background:var(--danger-hover)}.ui-field{display:flex;flex-direction:column;gap:var(--sp-2)}.ui-label{font-size:var(--fs-caption);font-weight:var(--fw-heavy);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}.ui-input{font-family:inherit;font-size:var(--fs-base);font-weight:var(--fw-regular);color:var(--ink);background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--r-sm);padding:0 12px;line-height:var(--lh-flat);width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .15s,border-color .15s}.ui-input::placeholder{color:var(--ink-3)}.ui-input:focus{outline:none;background:var(--panel);border-color:var(--line-focus)}.ui-input:disabled{opacity:.5;border-color:transparent}textarea.ui-input{height:auto;min-height:calc(var(--ctl-h-lg) * 2);padding:var(--sp-2) var(--sp-3);line-height:var(--lh-base);white-space:pre-wrap;overflow-x:hidden;overflow-y:auto;text-overflow:clip;resize:vertical}.ico-lead{vertical-align:middle;margin-right:5px}.ui-avatar{flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-pill);font-family:var(--font-text);font-weight:var(--fw-medium);line-height:1;text-transform:uppercase;overflow:hidden;-webkit-user-select:none;user-select:none}.ui-avatar--sm{width:28px;height:28px;font-size:11px}.ui-avatar--md{width:32px;height:32px;font-size:13px}.ui-avatar--lg{width:40px;height:40px;font-size:15px}.ui-avatar--xl{width:48px;height:48px;font-size:18px}.ui-avatar--plein{background:var(--accent);color:var(--ink-inverse)}.ui-avatar--violet{background:var(--accent-soft);color:var(--accent)}.ui-avatar--vert{background:var(--st-win-soft);color:var(--st-win-ink)}.ui-avatar--ambre{background:var(--st-mid-soft);color:var(--st-mid-ink)}.ui-avatar--ardoise{background:var(--surface-soft-pressed);color:var(--ink-2)}.ui-avatar img{width:100%;height:100%;object-fit:cover}.ui-add{display:inline-flex;align-items:center;gap:var(--sp-3);width:100%;padding:10px 16px 10px 12px;border:0;border-radius:16px;background:transparent;font-family:var(--font-text);cursor:pointer;text-align:left;transition:background .15s}.ui-add:disabled{opacity:.5;cursor:not-allowed}.ui-add:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ui-add-square{flex:none;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-sm);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);color:var(--accent)}.ui-add-label{flex:1;min-width:0;font-size:var(--fs-base);font-weight:var(--fw-medium);line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-add--liste{color:var(--accent)}.ui-add--liste:hover{background:var(--surface-soft)}.ui-add--liste:active{background:var(--surface-soft-pressed)}.ui-add--plein{background:var(--accent);color:var(--ink-inverse)}.ui-add--plein:hover{background:var(--accent-dark)}.ui-add--plein:active{background:var(--accent-pressed)}.ui-check{position:relative;display:inline-flex;width:18px;height:18px;flex:none}.ui-check input{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;opacity:0;cursor:pointer}.ui-check input:disabled{cursor:not-allowed}.ui-check-box{width:18px;height:18px;border-radius:var(--r-xs);border:1.5px solid var(--line-strong);background:var(--panel);display:inline-flex;align-items:center;justify-content:center;color:transparent;transition:background .12s,border-color .12s;pointer-events:none}.ui-check input:hover+.ui-check-box{border-color:var(--accent)}.ui-check input:focus-visible+.ui-check-box{outline:none;box-shadow:var(--focus-ring)}.ui-check input:checked+.ui-check-box,.ui-check input:indeterminate+.ui-check-box{background:var(--accent);border-color:var(--accent);color:var(--ink-inverse)}.ui-check-tick{opacity:0}.ui-check input:checked+.ui-check-box .ui-check-tick{opacity:1}.ui-check-dash{width:9px;height:2px;border-radius:1px;background:var(--ink-inverse)}.ui-check input:disabled+.ui-check-box{opacity:.5}.ui-check-label{display:inline-flex;align-items:center;gap:9px;cursor:pointer;min-height:40px}.ui-check-lb{font-size:var(--fs-sm);color:var(--ink)}.ui-toggle-row{display:inline-flex;align-items:center;gap:var(--sp-3);cursor:pointer;min-height:40px}.ui-toggle-row.disabled{cursor:not-allowed}.ui-toggle-txt{display:flex;flex-direction:column;gap:1px}.ui-toggle-lb{font-size:var(--fs-sm);color:var(--ink)}.ui-toggle-desc{font-size:var(--fs-caption);color:var(--ink-3)}.ui-select{position:relative;width:100%}.ui-select-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);font-family:inherit;font-size:var(--fs-base);font-weight:var(--fw-regular);color:var(--ink);background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--r-sm);height:var(--ctl-h-row, var(--ctl-h-md));padding:0 12px;line-height:var(--lh-flat);cursor:pointer;text-align:left;transition:background .15s,border-color .15s}.ui-select-btn:hover:not(:disabled){background:var(--surface-soft-hover);border-color:var(--line-strong)}.ui-select-btn:focus,.ui-select-btn[aria-expanded=true]{outline:none;background:var(--panel);border-color:var(--line-focus)}.ui-select-btn:disabled{opacity:.5;border-color:transparent;cursor:not-allowed}.ui-select-btn--sm .ui-select-ic svg{width:14px;height:14px}.ui-select-btn--lg .ui-select-ic svg{width:18px;height:18px}.ui-select-ph{color:var(--ink-3)}.ui-select-txt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ui-select-ic{display:inline-flex;color:var(--ink-2);flex:none}.ui-select-pop{list-style:none;margin:6px 0 0;padding:4px;position:absolute;top:100%;left:0;right:0;z-index:40;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-ctl);box-shadow:var(--shadow-lg);max-height:260px;overflow-y:auto;overflow-x:hidden}.ui-select-pop--up{top:auto;bottom:100%;margin:0 0 6px}.ui-select-pop--fixed{right:auto;top:auto;bottom:auto;margin:0;min-width:180px;z-index:200}.ui-select-pop li{margin:0}.ui-select-opt{width:100%;text-align:left;border:0;background:transparent;font:inherit;font-size:var(--fs-base);color:var(--ink);padding:8px 10px;border-radius:var(--r-sm);cursor:pointer}.ui-select-opt.hl,.ui-select-opt:hover{background:var(--surface-soft)}.ui-select-opt.on{color:var(--accent);font-weight:var(--fw-medium)}.ui-msel-opt{display:flex;align-items:center;gap:10px;padding:10px 12px}.ui-msel-opt.on{color:var(--ink);font-weight:var(--fw-regular)}.ui-msel-box{flex:none;width:18px;height:18px;border:1px solid var(--line-strong);border-radius:var(--r-xs);background:var(--surface-soft);display:inline-flex;align-items:center;justify-content:center;color:var(--ink-inverse);transition:background .12s,border-color .12s}.ui-msel-box.on{background:var(--accent);border-color:var(--accent)}.ui-msel-lb{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-msel-search{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:8px;padding:6px 8px;margin:-4px -4px 4px;background:var(--panel);border-bottom:1px solid var(--line);color:var(--ink-3)}.ui-msel-search input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:var(--fs-sm);color:var(--ink);outline:none}.ui-msel-empty{padding:12px;text-align:center;font-size:var(--fs-sm);color:var(--ink-3)}.ui-card{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--r-card);box-shadow:none}.ui-card--solid{background:var(--panel);border-color:var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--shadow)}.ui-card--pad{padding:var(--sp-5)}.ui-badge{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-caption);font-weight:var(--fw-bold);padding:3px 10px;border-radius:var(--r-pill);white-space:nowrap;color:#fff}.ui-badge--soft{background:#17151f14;color:var(--ink-2)}.ui-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:#1218266b;display:flex;align-items:center;justify-content:center;padding:var(--sp-6)}.ui-modal{background:var(--panel);border-radius:24px;width:min(560px,94vw);max-height:86vh;display:flex;flex-direction:column;box-shadow:0 24px 70px #0f172a47;overflow:hidden}.ui-modal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--line)}.ui-modal-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ui-modal-close{width:30px;height:30px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--panel);color:var(--ink-2);font-size:15px;cursor:pointer}.ui-modal-body{padding:var(--sp-5);overflow:auto;overflow-x:hidden}@media (max-width: 760px){.ui-modal-overlay{padding:10px;align-items:flex-start}.ui-modal{width:100%;max-width:100%;max-height:92dvh;margin-top:max(0px,env(safe-area-inset-top))}.ui-modal-head,.ui-modal-body{padding:var(--sp-4)}}.ui-cc{display:inline-flex;gap:5px;align-items:center}.ui-cc i{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:#413d4b;color:#fff}.ui-cc i.on{background:var(--st-win);color:#fff}.ui-disp{display:inline-flex;gap:4px}.ui-disp-b{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink-3);cursor:pointer;font-size:13px;line-height:var(--lh-flat);padding:0;transition:background .12s,border-color .12s,color .12s}.ui-disp-b:hover{border-color:var(--c);color:var(--c)}.ui-disp-b.on{background:var(--c);border-color:var(--c);color:var(--ink-inverse)}.ui-contacted{display:inline-flex;align-items:center;gap:7px;font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);padding:5px 11px 5px 8px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--panel);color:var(--ink-2);cursor:pointer;white-space:nowrap}.ui-contacted .cbx{width:15px;height:15px;border:1.5px solid var(--line-strong);border-radius:4px;display:inline-flex;align-items:center;justify-content:center;color:transparent}.ui-contacted.on{border-color:var(--st-win);color:var(--st-win)}.ui-contacted.on .cbx{background:var(--st-win);border-color:var(--st-win);color:#fff}.ui-pager{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 4px 0}.ui-pager-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ui-pager-info{font-size:var(--fs-sm);color:var(--ink-2)}.ui-pager-rows{font-size:var(--fs-sm);color:var(--ink-3)}.ui-pager-left .ui-select{width:auto;min-width:74px}.ui-pager-nav{display:flex;align-items:center;gap:2px;padding:4px;background:var(--surface-soft);border-radius:var(--r-ctl)}.ui-pager-btn,.ui-pager-num{display:inline-flex;align-items:center;justify-content:center;min-width:var(--ctl-h-sm);height:var(--ctl-h-sm);padding:0 8px;border:0;background:transparent;border-radius:var(--r-sm);font:inherit;font-size:var(--fs-sm);line-height:var(--lh-flat);color:var(--ink);cursor:pointer}.ui-pager-btn:hover:not(:disabled),.ui-pager-num:hover:not(.on){background:var(--surface-soft-pressed)}.ui-pager-btn:disabled{opacity:.4;cursor:not-allowed}.ui-pager-num.on{background:var(--ink);color:var(--ink-inverse);font-weight:var(--fw-medium)}.ui-pager-el{color:var(--ink-3);padding:0 2px}.ui-modal-foot{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:4px 20px 20px;flex:none}.ui-modal-foot .ui-btn{width:auto}.ui-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ui-btn--danger:focus-visible,.ui-btn--danger-outline:focus-visible,.ui-btn--danger-subtle:focus-visible{box-shadow:var(--focus-ring-danger)}.ui-btn--validate:focus-visible,.ui-btn--validate-outline:focus-visible,.ui-btn--validate-subtle:focus-visible{box-shadow:var(--focus-ring-win)}.ui-btn--xs{font-size:var(--fs-caption);padding:4px 10px;gap:6px}.ui-btn--lg{font-size:var(--fs-md);padding:12px 24px}.ui-btn--primary{color:var(--ink-inverse)}.ui-btn--primary:active:not(:disabled){background:var(--accent-pressed)}.ui-btn--ghost:hover:not(:disabled){background:var(--surface-soft-hover)}.ui-btn--ghost:active:not(:disabled){background:var(--surface-soft-pressed)}.ui-btn--outline:active:not(:disabled){background:var(--surface-soft-pressed);border-color:var(--line-strong)}.ui-btn--subtle{background:var(--accent-soft);color:var(--accent)}.ui-btn--subtle:hover:not(:disabled){background:var(--accent-soft-hover)}.ui-btn--subtle:active:not(:disabled){background:var(--accent-soft-pressed)}.ui-btn--danger{color:var(--ink-inverse)}.ui-btn--danger:active:not(:disabled){background:var(--danger-pressed)}.ui-btn--danger-outline{background:var(--panel);border:1px solid var(--danger);color:var(--danger-ink)}.ui-btn--danger-outline:hover:not(:disabled){background:var(--danger-soft)}.ui-btn--danger-subtle{background:var(--danger-soft);color:var(--danger-ink)}.ui-btn--danger-subtle:hover:not(:disabled){background:var(--danger-soft-hover)}.ui-btn--danger-subtle:active:not(:disabled){background:var(--danger-soft-pressed)}.ui-btn--validate{background:var(--st-win);color:var(--ink-inverse)}.ui-btn--validate:hover:not(:disabled){background:var(--st-win-hover)}.ui-btn--validate:active:not(:disabled){background:var(--st-win-pressed)}.ui-btn--validate-outline{background:var(--panel);border:1px solid var(--st-win);color:var(--st-win-ink)}.ui-btn--validate-outline:hover:not(:disabled){background:var(--st-win-soft)}.ui-btn--validate-subtle{background:var(--st-win-soft);color:var(--st-win-ink)}.ui-btn--validate-subtle:hover:not(:disabled){background:var(--st-win-soft-hover)}.ui-btn--validate-subtle:active:not(:disabled){background:var(--st-win-soft-pressed)}.ui-btn--icon{padding:9px}.ui-btn--icon.ui-btn--xs{padding:5px}.ui-btn--icon.ui-btn--sm{padding:6px}.ui-btn--icon.ui-btn--lg{padding:12px}.ui-btn{height:var(--ctl-h-md);padding:0 var(--sp-4);line-height:var(--lh-flat)}.ui-btn--xs{height:var(--ctl-h-xs);padding:0 var(--sp-2);font-size:var(--fs-caption);gap:6px}.ui-btn--sm{height:var(--ctl-h-sm);padding:0 var(--sp-3);font-size:var(--fs-sm)}.ui-btn--md{height:var(--ctl-h-md);padding:0 var(--sp-4);font-size:var(--fs-base)}.ui-btn--lg{height:var(--ctl-h-lg);padding:0 var(--sp-6);font-size:var(--fs-md)}.ui-btn--icon{width:var(--ctl-h-md);height:var(--ctl-h-md);padding:0}.ui-btn--icon.ui-btn--xs{width:var(--ctl-h-xs);height:var(--ctl-h-xs)}.ui-btn--icon.ui-btn--sm{width:var(--ctl-h-sm);height:var(--ctl-h-sm)}.ui-btn--icon.ui-btn--lg{width:var(--ctl-h-lg);height:var(--ctl-h-lg)}input.ui-input,.ui-select-btn{height:var(--ctl-h-row, var(--ctl-h-md));padding:0 12px;line-height:var(--lh-flat)}.ui-select-btn--sm{height:var(--ctl-h-sm);padding:0 10px;font-size:var(--fs-sm)}.ui-select-btn--lg{height:var(--ctl-h-lg);padding:0 14px;font-size:var(--fs-base)}.ui-menu-trigger{display:inline-flex;align-items:center;gap:var(--sp-2);width:auto;height:var(--ctl-h-row, var(--ctl-h-md));padding:0 12px 0 6px;border:1px solid transparent;border-radius:var(--r-pill);background:transparent;font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--ink);line-height:var(--lh-flat);white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s}.ui-menu-trigger:not(:has(.ui-menu-avatar)){padding:0 12px}.ui-menu-trigger:hover{background:var(--surface-soft)}.ui-menu-trigger[aria-expanded=true]{background:var(--surface-soft);border-color:var(--line)}.ui-menu-trigger:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ui-menu-trigger--soft{background:var(--surface-soft);border-color:var(--line)}.ui-menu-trigger--soft:hover{background:var(--surface-soft-hover);border-color:var(--line-strong)}.ui-menu-trigger--soft[aria-expanded=true]{background:var(--panel);border-color:var(--line-strong)}.ui-menu-trigger--lg{padding:0 14px 0 8px;font-size:var(--fs-base);gap:10px}.ui-menu-trigger--lg .ui-menu-avatar{width:32px;height:32px;font-size:12px}.ui-menu-label{min-width:0;overflow:hidden;text-overflow:ellipsis}.ui-menu-avatar{flex:none;width:28px;height:28px;border-radius:var(--r-pill);background:var(--accent);color:var(--ink-inverse);font-size:11px;font-weight:var(--fw-heavy);line-height:var(--lh-flat);display:inline-flex;align-items:center;justify-content:center;text-transform:uppercase}.ui-menu-chevron{flex:none;color:var(--ink-3);display:inline-flex;transition:transform .15s}.ui-menu-trigger[aria-expanded=true] .ui-menu-chevron{transform:rotate(180deg)}.ui-count-dot{position:absolute;top:-2px;right:0;min-width:17px;height:17px;padding:0 4px;border-radius:var(--r-pill);background:var(--coral);color:var(--ink-inverse);font-size:10px;font-weight:var(--fw-bold);line-height:var(--lh-flat);display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--panel)}.ui-input,.ui-select-btn>span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auto{max-width:560px;margin:0 auto;padding:var(--sp-5) var(--sp-4) var(--sp-10);display:flex;flex-direction:column;gap:var(--sp-5)}.auto:has(#terrain-onglet-carte[aria-selected=true]){max-width:1120px}.auto-tete{display:flex;flex-direction:column;gap:var(--sp-3)}.auto-marque{display:flex;align-items:center;gap:var(--sp-3)}.auto-marque img{width:32px;height:32px}.auto-marque span{font-size:var(--fs-sm);color:var(--ink-2)}.auto-form{display:flex;flex-direction:column;gap:var(--sp-4)}.auto-pied{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.auto-lien{background:none;border:0;padding:var(--sp-2) 0;font:inherit;font-size:var(--fs-sm);color:var(--ink-2);text-decoration:underline;cursor:pointer;min-height:44px}.auto-lien:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.terrain-declarer{display:flex;flex-direction:column;gap:var(--sp-4);max-width:480px;margin:0 auto;width:100%}.terrain-fil{display:flex;justify-content:space-between;gap:var(--sp-2);list-style:none;margin:0;padding:0}.terrain-fil-pt{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);color:var(--ink-3);font-size:var(--fs-caption)}.terrain-fil-num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--panel);font-weight:var(--fw-medium)}.terrain-fil-pt.on{color:var(--accent);font-weight:var(--fw-medium)}.terrain-fil-pt.on .terrain-fil-num{background:var(--accent);border-color:var(--accent);color:var(--ink-inverse)}.terrain-fil-pt.fait{color:var(--st-win-ink)}.terrain-fil-pt.fait .terrain-fil-num{background:var(--st-win-soft);border-color:var(--st-win);color:var(--st-win-ink)}.terrain-carte{display:flex;flex-direction:column;gap:var(--sp-4)}.terrain-pos{font-size:var(--fs-caption);color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em}.terrain-titre{margin:0;font-family:var(--font-display);font-size:var(--fs-2xl);font-weight:var(--fw-thin);letter-spacing:-.02em;line-height:1.1;color:var(--ink)}.terrain-titre:focus{outline:none}.terrain-aide,.terrain-info{margin:0;font-size:var(--fs-sm);color:var(--ink-2)}.terrain-info b{color:var(--ink)}.terrain-champ{display:flex;flex-direction:column;gap:var(--sp-2)}.terrain-alerte,.terrain-erreur{margin:0;padding:var(--sp-3);border-radius:var(--r-ctl);font-size:var(--fs-sm)}.terrain-alerte{background:var(--st-mid-soft);color:var(--st-mid-ink)}.terrain-erreur{background:var(--danger-soft);color:var(--danger-ink)}.terrain-grille{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.terrain-choix{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-2);min-height:88px;padding:var(--sp-3);text-align:center;border:1px solid var(--line);border-radius:var(--r-card);background:var(--panel);color:var(--ink-2);font:inherit;font-size:var(--fs-sm);cursor:pointer}.terrain-choix:hover{border-color:var(--accent);color:var(--ink)}.terrain-choix.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:var(--fw-medium)}.terrain-choix--large{flex-direction:row;justify-content:flex-start;text-align:left;min-height:64px}.terrain-choix--large span{display:flex;flex-direction:column;gap:2px;min-width:0}.terrain-choix--large small{font-size:var(--fs-caption);color:var(--ink-3);font-weight:400}.terrain-compteurs{display:flex;flex-direction:column;gap:var(--sp-3)}.terrain-compteur{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.terrain-compteur-lb{font-size:var(--fs-sm);color:var(--ink-2);flex:1;min-width:0}.terrain-compteur-ctl{display:flex;align-items:center;gap:var(--sp-2);flex:none}.terrain-pm{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--r-ctl);border:1px solid var(--line);background:var(--panel);color:var(--ink);font:inherit;font-size:var(--fs-xl);line-height:1;cursor:pointer}.terrain-pm:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.terrain-pm:disabled{opacity:.4;cursor:not-allowed}.terrain-valeur{width:76px;height:48px;text-align:center}.terrain-texte{width:100%;box-sizing:border-box;resize:vertical;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--panel);color:var(--ink);font:inherit;font-size:var(--fs-sm);padding:var(--sp-3);line-height:1.4}.terrain-compte{display:block;text-align:right;font-size:var(--fs-caption);color:var(--ink-3)}.terrain-choix:focus-visible,.terrain-pm:focus-visible,.terrain-texte:focus-visible,.terrain-valeur:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.terrain-texte:focus{border-color:var(--accent)}.terrain-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-top:var(--sp-2)}.terrain-nav--fin{justify-content:flex-end}.terrain-fin{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--sp-4);padding-block:var(--sp-8)}.terrain-fin-ic{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--r-pill);background:var(--st-win-soft);color:var(--st-win-ink)}.terrain-fin-acts{display:flex;flex-direction:column;gap:var(--sp-3);width:100%}.terrain-fin-modif{flex-direction:row}.terrain-fin-modif>*{flex:1 1 0}.terrain-fin-conf{width:100%}.terrain-ou{display:flex;flex-direction:column;gap:var(--sp-4);max-width:560px;margin:0 auto;width:100%}.terrain-jour{display:flex;flex-direction:column;gap:var(--sp-3)}.terrain-jour-titre{margin:0;font-size:var(--fs-md);font-weight:var(--fw-medium);color:var(--ink)}.terrain-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-3)}.terrain-opp{display:flex;flex-direction:column;gap:var(--sp-2)}.terrain-opp-tete{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2)}.terrain-opp-titre{margin:0;font-size:var(--fs-md);font-weight:var(--fw-medium);color:var(--ink)}.terrain-opp-meta{margin:0;font-size:var(--fs-sm);color:var(--ink-2);overflow-wrap:anywhere}.terrain-opp-insc{margin:0;font-size:var(--fs-sm);color:var(--ink-3);overflow-wrap:anywhere}.terrain-opp-lien{color:var(--accent);font-size:var(--fs-sm)}.terrain-opp-lien:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.terrain-pastille{display:inline-block;padding:2px var(--sp-3);border-radius:var(--r-pill);font-size:var(--fs-caption);font-weight:var(--fw-medium)}.terrain-pastille--marche{background:var(--st-win-soft);color:var(--st-win-ink)}.terrain-pastille--evenement{background:var(--st-mid-soft);color:var(--st-mid-ink)}.terrain-vide{text-align:center;color:var(--ink-2)}.terrain-masque{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.terrain-ok{margin:0;padding:var(--sp-3);border-radius:var(--r-ctl);font-size:var(--fs-sm);background:var(--st-win-soft);color:var(--st-win-ink)}.terrain-page{display:flex;flex-direction:column;gap:var(--sp-5)}.terrain-tete{display:flex;flex-direction:column;gap:var(--sp-3)}.terrain-onglets{display:flex;width:100%}.terrain-onglets .seg-btn{flex:1;padding:0 var(--sp-2)}.terrain-onglets .seg-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.terrain-message{max-width:560px}.terrain-suivi{display:flex;flex-direction:column;gap:var(--sp-4)}.terrain-filtres{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.terrain-seg .seg-btn{padding:0 var(--sp-4)}.terrain-seg .seg-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.terrain-filtre-bassin{min-width:220px}.terrain-suivi-grille{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:var(--sp-5);align-items:start}.terrain-suivi-geo,.terrain-suivi-cote{display:flex;flex-direction:column;gap:var(--sp-3);min-width:0}.terrain-geo{padding:var(--sp-3);overflow:hidden}.terrain-geo-attente{padding:var(--sp-8) var(--sp-4);text-align:center}.terrain-legende{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-4);font-size:var(--fs-caption);color:var(--ink-2)}.terrain-legende-pas{display:inline-flex}.terrain-legende-pas i,.terrain-legende-vide i{display:inline-block;width:14px;height:10px}.terrain-legende-pas i:first-child{border-radius:var(--r-xs) 0 0 var(--r-xs)}.terrain-legende-pas i:last-child{border-radius:0 var(--r-xs) var(--r-xs) 0}.terrain-legende-vide{display:inline-flex;align-items:center;gap:var(--sp-1)}.terrain-legende-vide i{background:var(--st-none);border-radius:var(--r-xs)}.terrain-actives{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.terrain-actives-titre{font-size:var(--fs-caption);color:var(--ink-3);margin-right:var(--sp-1)}.terrain-puce{display:inline-flex;align-items:center;gap:var(--sp-1);min-height:32px;padding:0 var(--sp-3);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--panel);color:var(--ink-2);font:inherit;font-size:var(--fs-caption);cursor:pointer}.terrain-puce b{color:var(--accent);font-weight:var(--fw-bold)}.terrain-puce:hover{border-color:var(--accent);color:var(--ink)}.terrain-puce.on{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.terrain-puce:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.terrain-astuce{color:var(--ink-3)}.terrain-commune{display:flex;flex-direction:column;gap:var(--sp-3)}.terrain-commune-tete{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3)}.terrain-commune-nom{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-medium);color:var(--ink)}.terrain-commune-per{margin:2px 0 0;font-size:var(--fs-caption);color:var(--ink-3)}.terrain-actions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.terrain-action{display:flex;flex-direction:column;gap:2px;padding:var(--sp-3) 0;border-top:1px solid var(--line)}.terrain-action:first-child{border-top:0;padding-top:0}.terrain-action p{margin:0;font-size:var(--fs-sm);color:var(--ink-2);overflow-wrap:anywhere}.terrain-action .terrain-action-tete{display:flex;flex-wrap:wrap;gap:0 var(--sp-2)}.terrain-action-tete b{color:var(--ink);font-weight:var(--fw-medium)}.terrain-action .terrain-action-qui{font-size:var(--fs-caption);color:var(--ink-3)}.terrain-action .terrain-action-note{color:var(--ink);font-style:italic}.terrain-etat{font-size:var(--fs-sm);color:var(--ink-2)}.terrain-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3);transition:opacity .15s}.terrain-kpis--attente{opacity:.5}.terrain-kpi{display:flex;flex-direction:column;gap:2px;min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-ctl);padding:var(--sp-3) var(--sp-4)}.terrain-kpi b{font-family:var(--font-display);font-weight:var(--fw-thin);font-size:var(--fs-2xl);line-height:var(--lh-tight);letter-spacing:-.02em;color:var(--accent);white-space:nowrap}.terrain-kpi span{font-size:var(--fs-caption);color:var(--ink-2)}.terrain-bassins{overflow:hidden}.terrain-tableau{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.terrain-tableau-titre{text-align:left;padding:var(--sp-4) var(--sp-4) var(--sp-2);font-size:var(--fs-caption);font-weight:var(--fw-heavy);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}.terrain-tableau thead th{text-align:left;padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--line);font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--ink-3)}.terrain-tableau tbody th,.terrain-tableau tbody td{text-align:left;padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--line);font-weight:var(--fw-regular);color:var(--ink)}.terrain-tableau tbody tr:last-child th,.terrain-tableau tbody tr:last-child td{border-bottom:0}.terrain-tableau .terrain-nb{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.terrain-tableau .terrain-sans th,.terrain-tableau .terrain-sans td{color:var(--st-no);font-weight:var(--fw-bold)}.terrain-liens{display:flex;flex-direction:column;gap:var(--sp-4)}.terrain-liens-intro{max-width:680px}.terrain-liens-liste{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--sp-4)}.terrain-lien{display:flex;flex-direction:column;gap:var(--sp-3);height:100%;box-sizing:border-box}.terrain-lien-tete{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-2) var(--sp-3)}.terrain-lien-nom{margin:0;font-size:var(--fs-md);font-weight:var(--fw-medium);color:var(--ink)}.terrain-lien-code{font-size:var(--fs-caption);color:var(--ink-3)}.terrain-lien-code b{color:var(--ink);font-weight:var(--fw-bold);letter-spacing:.08em}.terrain-lien-acts{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.terrain-lien-url{margin:0;padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-soft);color:var(--ink);font-size:var(--fs-sm);line-height:1.4;overflow-wrap:anywhere;user-select:all;-webkit-user-select:all}.terrain-confirmer{display:flex;flex-direction:column;gap:var(--sp-3)}@media (min-width: 761px){.terrain-tete{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:var(--sp-4)}.terrain-onglets{width:auto;flex:none}.terrain-onglets .seg-btn{flex:none;padding:0 var(--sp-4)}}@media (max-width: 900px){.terrain-suivi-grille{grid-template-columns:minmax(0,1fr)}}@media (max-width: 760px){.terrain-filtres{flex-direction:column;align-items:stretch}.terrain-seg{display:flex;width:100%}.terrain-seg .seg-btn{flex:1 1 auto;padding:0 var(--sp-2);white-space:nowrap}.terrain-filtre-bassin{min-width:0}.terrain-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.terrain-liens-liste{grid-template-columns:minmax(0,1fr)}}.deptmap{position:relative;width:100%}.deptmap-svg{width:100%;height:auto;display:block}.deptmap-zoom{transform-origin:0 0;transition:transform .55s cubic-bezier(.4,0,.2,1)}.deptmap-neigh{fill:var(--neighbor-fill);fill-rule:evenodd;stroke:var(--neighbor-line);stroke-width:.8;vector-effect:non-scaling-stroke;pointer-events:none}.deptmap-com{stroke:#fff;stroke-width:.6;vector-effect:non-scaling-stroke;cursor:pointer;transition:opacity .14s}.deptmap-com.on{stroke-width:1.6}.deptmap-com.hl{stroke:var(--accent);stroke-width:2.4}.deptmap-tip{position:absolute;z-index:20;background:#17151feb;color:#fff;padding:9px 13px;border-radius:11px;font-size:13px;display:flex;flex-direction:column;gap:2px;pointer-events:none;max-width:260px}.deptmap-tip span{color:#ffffffb3;font-size:12px}.page{max-width:1240px;margin:0 auto;padding:var(--sp-6) var(--sp-6) var(--sp-10)}.page-title,.titre-page{margin:0;font-family:var(--font-display);font-size:var(--fs-titre-page);font-weight:var(--fw-thin);letter-spacing:-.025em;line-height:1.08;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.page-sub{margin:8px 0 0;color:var(--ink-2);font-size:var(--fs-md);line-height:1.5}.tab-head{flex:none;padding:var(--sp-6) var(--sp-4) 0}.tab-head .page-sub{margin-top:2px}@media (max-width: 760px){.tab-head{padding:var(--sp-4) var(--sp-3) 0}}.seg{display:inline-flex;align-items:stretch;height:var(--ctl-h-md);gap:2px;padding:3px;background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--r-pill)}.seg-btn{display:inline-flex;align-items:center;justify-content:center;font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:var(--lh-flat);padding:0 16px;border:0;border-radius:var(--r-pill);background:transparent;color:var(--ink-2);cursor:pointer;transition:background .15s,color .15s}.seg-btn.on{background:var(--panel);color:var(--ink);box-shadow:var(--shadow)}.carte-mode{display:flex;width:100%;margin-bottom:var(--sp-3)}.carte-mode .seg-btn{flex:1}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--sp-6)}.login-card{width:350px;max-width:92vw;display:flex;flex-direction:column;gap:var(--sp-4);text-align:center}.login-err{color:var(--st-no);font-size:var(--fs-sm);min-height:18px}@media (max-width: 760px){.page{padding:var(--sp-4) var(--sp-4) var(--sp-8)}.page-title{font-size:28px}}.login-logo{height:30px;width:auto;color:var(--ink);align-self:center}.carte-msg{padding:48px 16px;text-align:center;color:var(--ink-2)}.carte3{display:flex;align-items:stretch;height:100%;overflow:hidden;box-sizing:border-box}.carte-cantons{width:300px;flex:none;overflow-y:auto;border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;padding:14px 12px}.cc-h{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);padding:6px 6px 10px}.cc-item{border-radius:10px}.cc-item.on{background:var(--accent-soft)}.cc-head{width:100%;text-align:left;border:0;background:transparent;border-radius:10px;padding:8px 26px 8px 8px;cursor:pointer;display:block;font:inherit;position:relative}.cc-head:hover{background:var(--surface-soft)}.cc-item.on .cc-head:hover{background:transparent}.cc-chev{position:absolute;top:10px;right:8px;color:var(--ink-3);display:inline-flex;transition:transform .15s}.cc-chev.up{transform:rotate(180deg)}.cc-communes{padding:2px 6px 8px;display:flex;flex-direction:column;gap:1px}.cc-com{display:flex;align-items:center;gap:8px;width:100%;border:0;background:transparent;font:inherit;text-align:left;padding:6px 8px;border-radius:8px;cursor:pointer}.cc-com:hover{background:var(--surface-soft)}.cc-com.on{background:var(--panel);box-shadow:var(--shadow)}.cc-com-dot{width:8px;height:8px;border-radius:50%;flex:none}.cc-com-nm{flex:1;font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cc-com-n{font-size:12px;color:var(--ink-3);flex:none}.cc-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.cc-name{font-size:14px;font-weight:600}.cc-pct{font-size:12px;color:var(--ink-3)}.cc-sub{font-size:12px;color:var(--ink-2);margin-top:2px}.cc-bar{height:4px;border-radius:999px;background:#17151f14;margin-top:7px;overflow:hidden}.cc-bar span{display:block;height:100%;background:var(--accent);border-radius:999px}.cc-communes{padding:2px 8px 8px}.cc-com{display:flex;justify-content:space-between;font-size:13px;color:var(--ink-2);padding:3px 0}.cc-com-n{color:var(--ink-3)}.carte-center{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px;padding:14px;overflow:hidden}.carte-topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.carte-ttl{font-size:clamp(22px,1.9vw,28px);font-weight:300;font-family:var(--font-display);-webkit-font-smoothing:antialiased}.carte-sub{font-size:13.5px;color:var(--ink-2);margin-top:2px}.carte-topr{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.carte-back{display:inline-flex;align-items:center;gap:var(--sp-2);height:var(--ctl-h-md);padding:0 14px;font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:var(--lh-flat);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--panel);cursor:pointer}.carte-back:hover{border-color:var(--line-strong)}.carte-mapcard{flex:1;min-height:0;display:flex;overflow:hidden}.carte-mapcard .deptmap{width:100%;height:100%;display:flex}.carte-mapcard .deptmap-svg{width:100%;height:100%}.carte-detail{width:560px;flex:none;overflow:hidden;display:flex;flex-direction:column;min-width:0;border:0;border-left:1px solid var(--line);border-radius:0;background:transparent}.carte-detail--canton{overflow-y:auto;padding:18px 20px}.cd-kicker{font-size:12px;color:var(--ink-3);font-weight:600}.cd-name{font-size:24px;font-weight:700;margin-top:2px;letter-spacing:-.01em}.cd-stats{font-size:13.5px;color:var(--ink-2);margin-top:6px}.cd-stats b{color:var(--ink);font-weight:700}.cd-communes-h{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);margin:18px 0 8px}.cd-com{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 4px;border-top:1px solid var(--line);text-align:left}.cd-com-l{display:flex;flex-direction:column;min-width:0}.cd-com-nm{font-size:14px;font-weight:var(--fw-medium)}.cd-com-maire{font-size:12.5px;color:var(--ink-2)}.cd-com-n{font-size:13px;color:var(--ink-3);flex:none}@media (max-width: 1000px){.carte3{flex-direction:column;height:auto;overflow:visible}.carte-cantons,.carte-detail{width:100%;max-height:320px}.carte-cantons{border-right:0;border-bottom:1px solid var(--line)}.carte-detail{border-left:0;border-top:1px solid var(--line)}.carte-mapcard{min-height:420px}}@media (max-width: 760px){.app-panel .carte3:not(.tpl3) .carte-center{display:none}.app-panel .carte3:not(.tpl3) .carte-cantons,.app-panel .carte3:not(.tpl3) .carte-detail{width:100%;max-height:none}.app-panel .carte3:not(.tpl3) .carte-cantons{border-right:0;padding:12px}.app-panel .carte3:not(.tpl3) .carte-detail{border-left:0;padding-left:12px;padding-right:12px}.app-panel .carte3:not(.pb3):not(.carte3--focus) .carte-detail{display:none}.app-panel .carte3--focus .carte-cantons{display:none}.app-panel .carte3--focus .carte-detail{display:block}}.cd-com-btn{border:0;border-top:1px solid var(--line);background:transparent;width:100%;cursor:pointer;font:inherit}.cd-com-btn:hover{background:var(--surface-soft)}.cd-legend{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.cd-legend-h{display:flex;align-items:center;font-size:11px;font-weight:var(--fw-heavy);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);margin-bottom:10px}.cd-legend-reset{border:0;background:transparent;color:var(--accent);font-size:11px;cursor:pointer;margin-left:8px;text-transform:none;letter-spacing:0;font-weight:var(--fw-medium)}.cd-leg{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);padding:3px 0}.cd-leg-btn{width:100%;border:0;background:transparent;cursor:pointer;font:inherit;padding:5px 6px;border-radius:8px;text-align:left}.cd-leg-btn:hover{background:var(--surface-soft)}.cd-leg-btn.off{opacity:.38}.cd-leg-sw{width:11px;height:11px;border-radius:3px;flex:none}.cd-leg-lb{flex:1;text-align:left}.cd-leg b{color:var(--ink)}.cd-fil{margin-top:18px}.cd-fil-h{font-size:11px;font-weight:var(--fw-heavy);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);margin-bottom:8px}.cd-seg{display:flex;width:100%}.cd-seg{height:var(--ctl-h-sm)}.cd-seg .seg-btn{flex:1;padding:0 6px;font-size:12.5px;text-align:center;white-space:nowrap}.cd-seg .seg-btn b{font-weight:var(--fw-heavy);margin-left:3px}.cd-seg .seg-btn.on b{color:var(--ink)}.cd-note{font-size:12px;color:var(--ink-3);line-height:1.5;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.cd-mk{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--ink-2);padding:4px 6px}.cd-mk-l{flex:1}.cd-mk-n{color:var(--ink-3);font-size:11.5px}.cd-mk-dot{width:16px;height:16px;flex:none;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:10px;line-height:1}.cd-mk-dot.partial{background:#fff;border:2px solid var(--st-contact);box-sizing:border-box}.cd-mk-dot.done{background:var(--st-win);color:#fff;font-weight:700}.login-lead{font-size:17px;font-weight:var(--fw-heavy);letter-spacing:-.01em}.login-hint{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.5;margin:-4px 0 2px}.login-info{color:var(--st-win);font-size:var(--fs-sm);line-height:1.4}.login-form{display:flex;flex-direction:column;gap:var(--sp-4)}.login-link{align-self:center;border:0;background:transparent;color:var(--accent);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;padding:2px 4px}.login-link:hover{text-decoration:underline}.app-panel .carte3{padding:0;gap:0;height:100%}@media (min-width: 761px){.app-panel .carte-cantons{width:320px;padding:20px;border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.app-panel .carte-center{padding:20px 24px;gap:10px}}.app-panel .carte-mapcard{background:var(--bg);border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:var(--r-card)}@media (min-width: 761px){.app-panel .carte-detail{width:560px;padding:0;border:0;border-left:1px solid var(--line);border-radius:0;background:transparent}}.app-panel .carte-detail--canton{padding:20px}.app-panel .carte-detail .cd-leg{min-width:0}.app-panel .carte-detail .cd-leg-lb{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.app-panel .carte-detail .cd-seg{flex-wrap:wrap}.app-panel .carte-detail .cd-leg-btn{padding-right:var(--sp-2)}.app-panel .carte-detail .cd-leg b{flex:none;margin-left:auto;padding-left:var(--sp-3);min-width:28px;text-align:right;font-variant-numeric:tabular-nums}.app-panel .carte-detail .cd-note{overflow-wrap:anywhere}.app-panel .carte-detail{overflow-x:hidden}
