@import "https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;600;700&display=swap";:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.login-page{box-sizing:border-box;background:linear-gradient(160deg,#f7f9f8 0%,#eef3f0 100%);flex-direction:column;justify-content:center;align-items:center;gap:10px;height:calc(100svh - 2px);min-height:calc(100vh - 2px);padding:12px 16px;font-family:Roboto,sans-serif;display:flex;overflow:hidden}.login-card{box-sizing:border-box;background:#fff;border:1px solid #ececec;border-radius:16px;width:min(100%,424px);padding:28px 32px;box-shadow:0 10px 40px #00000014}.login-header{flex-direction:column;align-items:center;margin-bottom:26px;display:flex}.login-header h1{color:#1a1a1a;margin:14px 0 2px;font-size:17px;font-weight:700}.login-header p{color:#757575;margin:0;font-size:12px}.login-form{text-align:left;flex-direction:column;gap:14px;display:flex}.form-group{text-align:left}.form-group label{text-align:left;color:#1a1a1a;margin-bottom:5px;font-size:13px;font-weight:700;display:block}.form-group input{box-sizing:border-box;text-align:left;color:#1a1a1a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-color:#fff;border:1px solid #c9c9c9;border-radius:8px;width:100%;padding:10px 12px;font-size:13.5px;font-weight:500}.form-group input::placeholder{color:#9a9a9a}.form-group input:focus{border-color:#178a50;outline:none;box-shadow:0 0 0 2px #178a5026}.login-error{color:#d32f2f;background:#fdecea;border-radius:8px;padding:8px 10px;font-size:12.5px}.login-form button{color:#fff;cursor:pointer;background:#178a50;border:none;border-radius:8px;margin-top:6px;padding:11px;font-family:Roboto,sans-serif;font-size:14px;font-weight:700}.login-form button:disabled{opacity:.6;cursor:not-allowed}.login-footer-note{color:#9e9e9e;text-align:center;font-size:11px}@media (height<=640px){.login-card{padding-top:18px;padding-bottom:18px}.login-header{margin-bottom:14px}.login-header svg{width:72px;height:72px}.login-header h1{margin-top:8px}.login-form{gap:10px}}.dashboard-page{font-family:Roboto,sans-serif}.dashboard-page h1{color:#212121;letter-spacing:-.45px;border-bottom:1px solid #e5e9e6;margin:0 0 24px;padding:0 0 12px;font-size:20px;font-weight:700;position:relative}.dash-section-heading{margin:19px 0 11px}.dash-section-heading h2{color:#26352b;margin:0;font-size:14px;font-weight:650}.dash-section-heading p{color:#78827b;margin:4px 0 0;font-size:11px}.dash-section-heading-followup{margin-top:24px}.dash-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:-10px 0 20px;display:grid}.dash-overview button{color:#59645d;min-height:60px;font:inherit;cursor:pointer;background:#fff;border:1px solid #e3e9e4;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:12px;transition:border-color .15s,box-shadow .15s;display:flex}.dash-overview button:hover{border-color:#178a50;box-shadow:0 4px 12px #21212112}.dash-overview button:focus-visible{outline-offset:2px;outline:3px solid #178a504d}.dash-overview strong{color:#178a50;font-size:21px}.dash-category-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.dash-followup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.dash-followup-panel{background:#fff;border:1px solid #e3e9e4;border-radius:10px;min-width:0;padding:14px 16px 6px}.dash-followup-panel h3{color:#26352b;margin:0 0 7px;font-size:13px;font-weight:650}.dash-followup-item{color:#59645d;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #eef1ef;justify-content:space-between;align-items:center;padding:9px 0;font-size:12px;display:flex}.dash-followup-item:hover{color:#178a50}.dash-followup-item strong{color:#26352b;font-size:13px}.dash-followup-item:focus-visible{outline-offset:2px;outline:2px solid #178a50}.dash-card{text-align:left;background:#fff;border:1px solid #e0e0e0;border-radius:10px;flex-direction:column;gap:6px;padding:16px 18px;display:flex}.dash-card-link{width:100%;font:inherit;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.dash-card-link:hover{border-color:#178a50;transform:translateY(-2px);box-shadow:0 5px 16px #21212114}.dash-card-link:focus-visible{outline-offset:2px;outline:3px solid #178a504d}.dash-card-label{color:#757575;font-size:12px;font-weight:500}.dash-card-value{color:#178a50;font-size:24px;font-weight:700}.dash-card-missing{background:#fffbfa;border-color:#f0c9c6}.dash-card-missing .dash-card-label,.dash-card-missing .dash-card-value{color:#c62828}.dash-charts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.dash-chart-panel{background:#fff;border:1px solid #e3e9e4;border-radius:10px;min-width:0;padding:16px 16px 10px;box-shadow:0 3px 12px #1e36260a}.dash-chart-heading{min-height:48px;margin-bottom:4px}.dash-chart-heading h2{color:#26352b;margin:0;font-size:14px;font-weight:650}.dash-chart-heading p{color:#78827b;margin:4px 0 0;font-size:11px}.dash-bar-chart{width:100%;height:250px}.dash-chart-message{color:#78827b;place-items:center;min-height:250px;font-size:12px;display:grid}.dash-chart-error{color:#a3443e;text-align:center;padding:20px}.dash-loading,.dash-error{color:#757575;padding:24px;font-size:13.5px}@media (width<=900px){.dash-category-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-followup-grid{grid-template-columns:1fr}}@media (width<=760px){.dash-charts{grid-template-columns:1fr}}@media (width<=520px){.dash-overview{grid-template-columns:1fr;gap:8px}.dash-category-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dash-card{padding:12px 10px}}@media (width<=360px){.dash-category-cards{grid-template-columns:1fr}}.toast-container{z-index:1000;flex-direction:column;gap:10px;font-family:Roboto,sans-serif;display:flex;position:fixed;bottom:24px;right:24px}.toast{color:#fff;background:#212121;border-radius:8px;align-items:center;gap:10px;min-width:260px;max-width:380px;padding:12px 14px 12px 16px;animation:.2s ease-out toast-in;display:flex;box-shadow:0 6px 20px #00000040}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.toast-succes svg{color:#4caf7d;flex-shrink:0}.toast-erreur svg{color:#ef5350;flex-shrink:0}.toast-message{flex:1;font-size:13px;line-height:1.4}.toast-close{color:#9e9e9e;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;padding:2px;display:flex}.toast-close:hover{color:#fff}.upload-field{background:#fff;border:1px solid #e5eae6;border-radius:8px;min-width:0;padding:12px}.upload-field-header{align-items:center;margin-bottom:9px;display:flex}.upload-field-title{color:#292f2b;font-size:12.5px;font-weight:600}.upload-buttons{flex-wrap:wrap;gap:7px;display:flex}.upload-btn,.upload-action{color:#46534a;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #dce3de;border-radius:6px;justify-content:center;align-items:center;min-height:32px;padding:0 10px;font:500 10.5px Roboto,sans-serif;transition:border-color .15s,color .15s,background-color .15s;display:inline-flex}.upload-btn:hover,.upload-action:hover{color:#136b3e;background:#f7fbf8;border-color:#178a50}.upload-btn-primary{color:#fff;background:#178a50;border-color:#178a50}.upload-btn-primary:hover{color:#fff;background:#136b3e;border-color:#136b3e}.upload-btn:focus-visible,.upload-action:focus-visible{outline-offset:2px;outline:3px solid #178a503d}.upload-preview{background:#fafcfa;border:1px solid #e5eae6;border-radius:6px;flex-wrap:wrap;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.upload-preview-info{flex:1;min-width:0;display:flex}.upload-preview-name{color:#292f2b;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:550;overflow:hidden}.upload-action-danger{color:#a33b32;border-color:#f0d3d0}.upload-action-danger:hover{color:#8f2e27;background:#fff7f6;border-color:#c9473c}@media (width<=560px){.upload-buttons{grid-template-columns:1fr 1fr;display:grid}.upload-btn{padding:0 6px;font-size:10px}}.form-progress{flex-shrink:0;align-items:center;gap:12px;padding:14px 26px 0;display:flex}.form-progress>span{color:#8a8a8a;white-space:nowrap;align-items:center;gap:7px;font-size:11px;font-weight:600;display:flex}.form-progress>span b{color:#777;background:#f0f0f0;border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.form-progress>span.active{color:#178a50}.form-progress>span.active b,.form-progress>span.complete b{color:#fff;background:#178a50}.form-progress>span.complete{color:#526b5b}.form-progress>i{background:#e0e0e0;width:32px;height:1px}.form-disclosure{border-bottom:1px solid #f0f0f0}.form-disclosure>summary{color:#424242;cursor:pointer;align-items:center;gap:10px;padding:16px 0;font-size:13px;font-weight:600;list-style:none;display:flex}.form-disclosure>summary::-webkit-details-marker{display:none}.form-disclosure>summary:after{content:"+";color:#178a50;margin-left:auto;font-size:18px;font-weight:400}.form-disclosure[open]>summary:after{content:"−"}.form-disclosure>summary:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #178a50}.form-disclosure-content{padding:0 0 18px}.form-documents-disclosure .form-disclosure-content{padding-bottom:20px}.form-row input:-webkit-autofill{-webkit-text-fill-color:#212121;caret-color:#212121;transition:background-color 5000s ease-in-out;-webkit-box-shadow:inset 0 0 0 1000px #fff}.form-row input:-webkit-autofill:hover{-webkit-text-fill-color:#212121;caret-color:#212121;transition:background-color 5000s ease-in-out;-webkit-box-shadow:inset 0 0 0 1000px #fff}.form-row input:-webkit-autofill:focus{-webkit-text-fill-color:#212121;caret-color:#212121;transition:background-color 5000s ease-in-out;-webkit-box-shadow:inset 0 0 0 1000px #fff}@media (width<=560px){.form-row-grid{grid-template-columns:1fr}.form-progress{gap:8px;padding-left:20px;padding-right:20px}.form-progress>span{gap:5px;font-size:10px}.form-progress>i{width:18px}}.proprietes-page{font-family:Roboto,sans-serif}.proprietes-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.proprietes-header h1{color:#212121;margin:0;font-size:20px;font-weight:700}.proprietes-header-actions{align-items:center;gap:8px;display:flex}.btn-primary{color:#fff;cursor:pointer;background:#178a50;border:0;border-radius:6px;padding:9px 16px;font:600 13px Roboto,sans-serif}.proprietes-filters{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.proprietes-filters input,.proprietes-filters select{box-sizing:border-box;color:#303833;background:#fff;border:1px solid #dde4df;border-radius:7px;flex:240px;min-width:0;height:38px;min-height:38px;padding:8px 12px;font:12px Roboto,sans-serif;transition:border-color .15s,box-shadow .15s}.proprietes-filters select{cursor:pointer;flex:165px}.proprietes-filters input{flex:2 260px}.proprietes-filters input::placeholder{color:#89918b}.proprietes-filter-actions{justify-content:space-between;align-items:center;gap:12px;margin:-12px 0 0;display:flex}.proprietes-clear-filters{color:#68736c;text-underline-offset:2px;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:8px;padding:7px 10px;font:500 12px Roboto,sans-serif;text-decoration:underline;display:inline-flex}.proprietes-clear-filters:focus-visible{outline-offset:2px;outline:3px solid #178a5038}.proprietes-clear-filters{color:#68736c;text-underline-offset:2px;font-weight:500;text-decoration:underline}.proprietes-clear-filters:hover{color:#178a50}.propriete-csj-document{color:#89918b;margin-top:4px;font-size:9px;display:block}.proprietes-filters input:focus,.proprietes-filters select:focus{border-color:#6ca985;outline:none;box-shadow:0 0 0 3px #178a5017}.proprietes-error{color:#d32f2f;background:#fdecea;border-radius:6px;margin-bottom:14px;padding:10px 14px;font-size:13px}.proprietes-loading,.proprietes-empty{color:#858d88;text-align:center;background:#fff;border:1px solid #e5eae6;border-radius:10px;padding:32px 20px;font-size:13px}.proprietes-table-wrap{background:#fff;border:1px solid #e2e8e3;border-radius:10px;overflow:hidden;box-shadow:0 3px 12px #2036270a}.proprietes-table{border-collapse:collapse;text-align:left;width:100%}.proprietes-table th{color:#778179;letter-spacing:.35px;text-transform:uppercase;white-space:nowrap;background:#f8faf8;border-bottom:1px solid #e4eae5;padding:12px 15px;font-size:10.5px;font-weight:600}.proprietes-table td{color:#515a54;vertical-align:middle;border-bottom:1px solid #eef1ef;padding:13px 15px;font-size:12px}.proprietes-table tbody tr{cursor:pointer;transition:background-color .12s}.proprietes-table tbody tr:last-child td{border-bottom:0}.proprietes-table tbody tr:hover,.proprietes-table tbody tr:focus-visible{background:#f7fbf8;outline:none}.proprietes-table tbody tr:focus-visible{box-shadow:inset 3px 0 #178a50}.propriete-nom{color:#26342b;font-size:12.5px;font-weight:650}.propriete-location-main,.propriete-location-sub{display:block}.propriete-location-main{color:#3d4941;font-weight:550}.propriete-location-sub{color:#89918b;margin-top:3px;font-size:10.5px}.propriete-csj{white-space:nowrap;border-radius:20px;align-items:center;padding:4px 9px;font-size:10px;font-weight:600;display:inline-flex}.propriete-csj.present{color:#187447;background:#e8f5ec}.propriete-csj.absent{color:#b42318;background:#fdecea}@media (width<=760px){.proprietes-filters{flex-wrap:wrap}.proprietes-filters select{flex:calc(50% - 5px)}.proprietes-filters input{flex-basis:100%}}@media (width<=480px){.proprietes-filters select{flex-basis:100%}.proprietes-header-actions{gap:6px}.proprietes-header-actions .btn-primary{padding-left:9px;padding-right:9px;font-size:10.5px}.proprietes-header h1{font-size:18px}.proprietes-table tbody tr{gap:11px 12px;padding:12px}}.confirm-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1100;background:#11181580;justify-content:center;align-items:center;padding:20px;animation:.15s ease-out confirm-fade;display:flex;position:fixed;inset:0}@keyframes confirm-fade{0%{opacity:0}to{opacity:1}}.confirm-card{background:#fff;border-radius:14px;width:100%;max-width:380px;padding:28px 28px 24px;font-family:Roboto,sans-serif;animation:.18s cubic-bezier(.16,1,.3,1) confirm-scale-in;position:relative;box-shadow:0 20px 50px #0003,0 2px 8px #00000014}.confirm-card-deconnexion{border:1px solid #e2e8e3;border-radius:12px;max-width:350px;padding:22px 24px 20px}.confirm-card-deconnexion .confirm-titre{margin-bottom:6px;font-size:16px}.confirm-card-deconnexion .confirm-message{margin-bottom:18px;font-size:12.5px;line-height:1.45}.confirm-card-suppression{border:1px solid #f1d6d3;border-radius:12px;max-width:360px;padding:22px 24px 20px}.confirm-card-suppression .confirm-icon{width:36px;height:36px;margin-bottom:12px}.confirm-card-suppression .confirm-titre{margin-bottom:6px;font-size:16px}.confirm-card-suppression .confirm-message{margin-bottom:18px;font-size:12.5px;line-height:1.45}.confirm-card-suppression .confirm-btn{padding:8px 15px;font-size:12.5px}@keyframes confirm-scale-in{0%{opacity:0;transform:scale(.96)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}.confirm-close{color:#bdbdbd;cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;transition:background .12s,color .12s;display:flex;position:absolute;top:14px;right:14px}.confirm-close:hover{color:#616161;background:#f5f5f5}.confirm-icon{color:#4f5bd5;background:#eef2ff;border-radius:11px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:16px;display:flex}.confirm-icon-danger{color:#d32f2f;background:#fdecea}.confirm-titre{color:#1a1a1a;letter-spacing:-.1px;margin:0 0 6px;font-size:15.5px;font-weight:700}.confirm-message{color:#757575;margin:0 0 24px;font-size:13px;line-height:1.55}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}.confirm-btn{cursor:pointer;border-radius:8px;padding:9px 18px;font-family:Roboto,sans-serif;font-size:13px;font-weight:600;transition:background .12s,border-color .12s,transform 80ms}.confirm-btn:active{transform:scale(.97)}.confirm-btn-annuler{color:#424242;background:#fff;border:1px solid #e0e0e0}.confirm-btn-annuler:hover{background:#fafafa;border-color:#c9c9c9}.confirm-btn-primaire{color:#fff;background:#178a50;border:1px solid #178a50}.confirm-btn-primaire:hover{background:#136b3e;border-color:#136b3e}.confirm-btn-danger{color:#fff;background:#d32f2f;border:1px solid #d32f2f}.confirm-btn-danger:hover{background:#b02525;border-color:#b02525}.detail-page{width:min(100%,760px);margin:0 auto;font-family:Roboto,sans-serif}.detail-back{color:#536157;cursor:pointer;background:#fff;border:1px solid #e0e7e2;border-radius:7px;align-items:center;gap:8px;margin-bottom:10px;padding:7px 11px;font:550 12px Roboto,sans-serif;transition:border-color .15s,color .15s;display:inline-flex}.detail-back:hover{color:#178a50;border-color:#178a50}.detail-back-icon{font-size:15px}.detail-card{background:#fff;border:1px solid #e3e9e4;border-radius:12px;padding:13px 16px;box-shadow:0 4px 18px #2036270d}.detail-header{border-bottom:1px solid #e9eeea;padding-bottom:9px}.detail-badge{color:#187447;background:#e8f5ec;border-radius:20px;margin-bottom:4px;padding:2px 8px;font-size:10.5px;font-weight:600;display:inline-flex}.detail-header h1{color:#202923;overflow-wrap:anywhere;margin:0;font-size:19px;font-weight:700;line-height:1.3}.detail-subtitle{color:#7d8780;margin:3px 0 0;font-size:12px}.detail-section{margin-top:10px}.detail-section h2{color:#343e37;margin:0 0 5px;font-size:14px;font-weight:650}.detail-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 7px;display:grid}.detail-field{background:#fbfcfb;border:1px solid #e9eeea;border-radius:8px;flex-direction:column;gap:2px;min-width:0;padding:5px 8px;display:flex}.detail-field-wide{grid-column:1/-1}.detail-label{color:#7d8780;font-size:9.5px;font-weight:550}.detail-value{color:#28332b;overflow-wrap:anywhere;font-size:11.5px;font-weight:550;line-height:1.35}.detail-contract-link{color:#178a50;border:1px solid #d7e5dc;border-radius:8px;align-items:center;min-height:38px;padding:0 13px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.detail-contract-link:hover{background:#f1f7f3}.document-tile{background:#fff;border:1px solid #e4eae5;border-radius:9px;min-width:0;padding:4px}.document-thumb{cursor:pointer;background-color:#f7f9f7;background-position:50%;background-repeat:no-repeat;background-size:contain;border:1px solid #edf0ed;border-radius:6px;justify-content:center;align-items:flex-end;width:100%;height:220px;padding:0;display:flex;position:relative;overflow:hidden}.document-thumb:not(.document-thumb-empty):hover{border-color:#a8c7b2}.document-preview-image{object-fit:contain;width:100%;height:100%}.document-pdf-preview iframe{background:#f7f9f7;border:1px solid #edf0ed;border-radius:6px;width:100%;height:220px;display:block}.document-pdf-preview a{color:#178a50;margin-top:6px;font-size:11px;display:inline-block}.document-thumb-overlay{color:#fff;text-align:center;opacity:0;background:#194a2ec7;width:100%;padding:7px 0;font:550 10px Roboto,sans-serif;transition:opacity .15s}.document-pdf-label{color:#46534a;background:#f7f9f7;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:100%;height:100%;font:11px Roboto,sans-serif;display:flex}.document-pdf-label strong{color:#fff;background:#b42318;border-radius:5px;padding:5px 9px;font-size:12px}.document-thumb:hover .document-thumb-overlay,.document-thumb:focus-visible .document-thumb-overlay{opacity:1}.document-thumb-empty{color:#969e98;cursor:default;text-align:center;border-style:dashed;align-items:center;font:11px Roboto,sans-serif}@media (width<=640px){.document-thumb,.document-pdf-preview iframe{height:180px}}.detail-actions{border-top:1px solid #e9eeea;justify-content:flex-end;gap:9px;margin-top:9px;padding-top:8px;display:flex}.detail-actions button{cursor:pointer;border-radius:7px;min-height:29px;padding:0 11px;font:600 12px Roboto,sans-serif;transition:background-color .15s,border-color .15s}.detail-edit-button{color:#fff;background:#178a50;border:1px solid #178a50}.detail-edit-button:hover{background:#136b3e;border-color:#136b3e}.detail-delete-button{color:#b42318;background:#fff;border:1px solid #eac9c6}.detail-delete-button:hover{background:#fff8f7;border-color:#d32f2f}.detail-loading,.detail-error{color:#757575;text-align:center;background:#fff;border:1px solid #e3e9e4;border-radius:10px;width:min(100%,760px);margin:40px auto;padding:20px 24px;font-size:13px}.viewer-topbar{color:#fff;justify-content:space-between;align-items:center;padding:14px 20px;font:500 13px Roboto,sans-serif;display:flex}.viewer-btn{color:#fff;cursor:pointer;background:#ffffff29;border:0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font:16px Roboto,sans-serif;text-decoration:none;display:flex}.viewer-image{box-sizing:border-box;object-fit:contain;flex:1;width:100%;height:100%;padding:0 24px 24px}.viewer-pdf{box-sizing:border-box;background:#fff;border:0;flex:1;width:100%;height:100%}@media (width<=640px){.detail-card{padding:14px 12px}.detail-header h1{font-size:20px}.detail-fields,.documents-grid{grid-template-columns:1fr}.detail-field-wide{grid-column:auto}.document-thumb{height:100px}.detail-actions{flex-wrap:wrap}}@media (width<=560px){.form-row-grid,.superficie-inputs{grid-template-columns:1fr}}.logements-page{font-family:Roboto,sans-serif}.logements-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.logements-header h1{color:#212121;margin:0;font-size:20px;font-weight:700}.logements-header-actions{gap:8px;display:flex}.btn-secondary{color:#424242;cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:6px;align-items:center;padding:9px 16px;font-family:Roboto,sans-serif;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.btn-secondary:hover{color:#178a50;border-color:#178a50}.logements-filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.logements-filters input{box-sizing:border-box;color:#303833;background:#fff;border:1px solid #dde4df;border-radius:7px;flex:1;min-width:180px;height:38px;min-height:38px;padding:8px 12px;font:12px Roboto,sans-serif}.statut-tabs{flex-wrap:wrap;gap:6px;display:flex}.statut-tab{box-sizing:border-box;color:#59635c;cursor:pointer;background:#fff;border:1px solid #dde4df;border-radius:7px;height:38px;min-height:38px;padding:7px 14px;font:500 12px Roboto,sans-serif;transition:color .15s,background-color .15s,border-color .15s}.statut-tab:hover{color:#178a50;border-color:#6ca985}.statut-tab.active{color:#fff;background:#178a50;border-color:#178a50}.logements-filters input:focus{border-color:#6ca985;outline:none;box-shadow:0 0 0 3px #178a5017}.logements-error{color:#d32f2f;background:#fdecea;border-radius:6px;margin-bottom:14px;padding:10px 14px;font-size:13px}.logements-loading,.logements-empty{color:#9e9e9e;text-align:center;padding:24px;font-size:13.5px}.logement-occupant{color:#69736c;font-size:12px;font-weight:500}.logement-lieu{color:#26342b;font-size:13.5px;font-weight:650}.logement-numero{color:#3d5947;font-size:12.5px;font-weight:600}.logements-table-wrap{background:#fff;border:1px solid #e2e8e3;border-radius:10px;overflow:hidden;box-shadow:0 3px 12px #2036270a}.logements-table{border-collapse:collapse;text-align:left;width:100%}.logements-table th{color:#778179;letter-spacing:.35px;text-transform:uppercase;white-space:nowrap;background:#f8faf8;border-bottom:1px solid #e4eae5;padding:12px 15px;font-size:10.5px;font-weight:600}.logements-table td{color:#515a54;vertical-align:middle;border-bottom:1px solid #eef1ef;padding:13px 15px;font-size:12px}.logements-table tbody tr{cursor:pointer;transition:background-color .12s}.logements-table tbody tr:last-child td{border-bottom:0}.logements-table tbody tr:hover,.logements-table tbody tr:focus-visible{background:#f7fbf8;outline:none}.logements-table tbody tr:focus-visible{box-shadow:inset 3px 0 #178a50}.logement-badge{text-transform:capitalize;border-radius:12px;align-items:center;padding:3px 10px;font-size:10.5px;font-weight:600;display:inline-flex}.badge-vacant,.badge-autre{color:#757575;background:#f0f0f0}@media (width<=760px){.logements-filters{flex-wrap:wrap}.logements-filters input{flex-basis:100%}.statut-tabs{width:100%}.logements-table-wrap{box-shadow:none;background:0 0;border:0;overflow:visible}.logements-table,.logements-table tbody{width:100%;display:block}.logements-table thead{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.logements-table tbody tr{background:#fff;border:1px solid #e2e8e3;border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-bottom:10px;padding:14px;display:grid}.logements-table td{border:0;flex-direction:column;gap:4px;min-width:0;padding:0;display:flex}.logements-table td:first-child{border-bottom:1px solid #eef1ef;grid-column:1/-1;padding-bottom:9px}.logements-table td:before{content:attr(data-label);color:#89918b;letter-spacing:.3px;text-transform:uppercase;font-size:9px;font-weight:600}}@media (width<=480px){.logements-header-actions{gap:6px}.logements-header-actions .btn-primary{padding-left:9px;padding-right:9px;font-size:10.5px}.logements-header h1{font-size:18px}.logements-table tbody tr{gap:11px 12px;padding:12px}}.lg-detail-page{max-width:640px;margin:0 auto;font-family:Roboto,sans-serif}.lg-detail-back{color:#424242;cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:20px;align-items:center;gap:8px;margin-bottom:20px;padding:9px 16px 9px 12px;font-family:Roboto,sans-serif;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex;box-shadow:0 1px 3px #0000000f}.lg-detail-back:hover{color:#178a50;background:#f1f9f4;border-color:#178a50;box-shadow:0 2px 6px #178a5026}.lg-detail-back-icon{font-size:15px;transition:transform .15s}.lg-detail-back:hover .lg-detail-back-icon{transform:translate(-2px)}.lg-detail-card{background:#fff;border:1px solid #eee;border-radius:14px;padding:28px 30px;box-shadow:0 4px 20px #0000000f}.lg-detail-badge{letter-spacing:.3px;color:#178a50;background:#e8f5ec;border-radius:20px;margin-bottom:10px;padding:3px 12px;font-size:11px;font-weight:600;display:inline-block}.lg-detail-header h1{color:#212121;margin:0;font-size:21px;font-weight:700;line-height:1.3}.lg-detail-subtitle{color:#3d5947;margin:5px 0 0;font-size:13px;font-weight:600}.lg-detail-fields{border-top:1px solid #f0f0f0;flex-direction:column;gap:3px;margin-top:22px;padding-top:20px;display:flex}.lg-detail-field{border-bottom:1px solid #f7f7f7;justify-content:space-between;align-items:baseline;gap:20px;padding:9px 0;font-size:13.5px;display:flex}.lg-detail-field:last-child{border-bottom:none}.lg-detail-label{color:#8a8a8a;flex-shrink:0;font-weight:500}.lg-detail-value{color:#212121;text-align:right;font-weight:500}.lg-detail-documents{border-top:1px solid #f0f0f0;margin-top:22px;padding-top:20px}.lg-detail-documents>.lg-detail-label{margin-bottom:12px;font-size:12.5px;display:block}.documents-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.document-thumb{aspect-ratio:4/3;cursor:pointer;background-color:#fafafa;background-position:50%;background-size:cover;border:1px solid #e8e8e8;border-radius:10px;transition:box-shadow .15s,transform .1s;position:relative;overflow:hidden}.document-thumb:not(.document-thumb-empty):hover{transform:translateY(-1px);box-shadow:0 4px 14px #0000001f}.document-thumb-empty{cursor:default;border-style:dashed;justify-content:center;align-items:center;display:flex}.document-thumb-empty span{color:#bdbdbd;font-size:11.5px}.document-thumb-overlay{color:#fff;text-align:center;background:linear-gradient(#178a5000,#178a50eb);padding:16px 0 6px;font-size:11px;font-weight:600;position:absolute;bottom:0;left:0;right:0}.document-thumb-label{color:#757575;text-align:center;margin-top:6px;font-size:11.5px;font-weight:500}.lg-detail-actions{gap:10px;margin-top:24px;display:flex}.lg-detail-actions button{cursor:pointer;border-radius:8px;padding:10px 20px;font-family:Roboto,sans-serif;font-size:13px;font-weight:600;transition:all .15s}.lg-detail-actions .btn-primary{color:#fff;background:#178a50;border:none}.lg-detail-actions .btn-primary:hover{background:#136b3e}.lg-detail-actions .btn-danger{color:#d32f2f;background:0 0;border:1px solid #f5c6c2}.lg-detail-actions .btn-danger:hover{background:#fdecea;border-color:#d32f2f}@media (width<=640px){.lg-detail-card{padding:14px 12px}.lg-detail-actions{border-top:1px solid #e9eeea;flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-top:9px;padding-top:8px}.lg-detail-actions button{min-height:29px;padding:0 11px;font-size:12px}}@media print{body.mode-impression .sidebar,body.mode-impression .topbar,body.mode-impression .lg-detail-back,body.mode-impression .lg-detail-actions{display:none!important}body.mode-impression .content{padding:0!important}body.mode-impression .lg-detail-card{box-shadow:none;border:none}}.lg-detail-loading,.lg-detail-error{color:#757575;text-align:center;background:#fff;border:1px solid #eee;border-radius:10px;max-width:640px;margin:40px auto;padding:20px 24px;font-size:13.5px}.viewer-overlay{z-index:200;background:#0a0a0aeb;flex-direction:column;display:flex;position:fixed;inset:0}.viewer-topbar{color:#fff;justify-content:space-between;align-items:center;padding:16px 22px;font-family:Roboto,sans-serif;font-size:13px;font-weight:500;display:flex}.viewer-actions{gap:8px;display:flex}.viewer-btn{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:15px;text-decoration:none;transition:background .15s;display:flex}.viewer-btn:hover{background:#ffffff47}.viewer-image{object-fit:contain;box-sizing:border-box;flex:1;width:100%;height:100%;padding:0 24px 24px}.lg-detail-field-alert{background:#fdecea;border-radius:6px;margin:4px -10px;padding:8px 10px}.lg-detail-field-alert .lg-detail-label,.lg-detail-field-alert .lg-detail-value{color:#d32f2f}.badge-en-service{color:#178a50;background:#e8f5ec}.badge-retraite{color:#b8860b;background:#fff4e0}.badge-decede{color:#d32f2f;background:#fdecea}.badge-vacant,.badge-autre{color:#757575;background:#f0f0f0}.regions-page{color:#25362d;text-align:left;flex-direction:column;width:min(1100px,100%);height:calc(100dvh - 108px);min-height:0;margin:0 auto;font-family:Roboto,sans-serif;display:flex;overflow:hidden}.regions-header{flex:none;justify-content:space-between;align-items:center;gap:18px;padding:2px 0 17px;display:flex}.regions-header h1{color:#20352a;letter-spacing:-.035em;margin:0;font-size:25px;font-weight:700;line-height:1.2}.regions-header p{color:#87928b;margin:4px 0 0;font-size:12px}.regions-add-button{color:#fff;cursor:pointer;background:#287850;border:1px solid #287850;border-radius:8px;min-height:37px;padding:0 14px;font:600 12px Roboto,sans-serif}.regions-add-button:hover{background:#1d6741;border-color:#1d6741}.regions-toolbar{border-top:1px solid #e9eeea;border-bottom:1px solid #e9eeea;flex:none;align-items:center;gap:12px;padding:10px 0;display:flex}.regions-toolbar input{color:#27382e;box-sizing:border-box;background:#fff;border:1px solid #e0e7e1;border-radius:7px;outline:none;width:min(310px,70%);height:34px;padding:0 11px;font:12px Roboto,sans-serif}.regions-toolbar input:focus{border-color:#69a782;box-shadow:0 0 0 3px #28785014}.regions-toolbar input::placeholder{color:#9ba59e}.regions-toolbar>span{color:#8a958e;white-space:nowrap;margin-left:auto;font-size:11px}.regions-grid{flex:auto;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:minmax(78px,auto);align-content:start;gap:10px;min-height:0;padding:13px 1px 2px;display:grid;overflow-y:auto}.region-card{box-sizing:border-box;background:#fff;border:1px solid #e5ebe6;border-radius:9px;flex-direction:column;justify-content:space-between;min-width:0;padding:11px 12px 9px;display:flex}.region-card:hover{border-color:#b9d4c2;box-shadow:0 3px 10px #1f482d0d}.region-card-info{min-width:0}.region-card-info h2{color:#2d4034;text-overflow:ellipsis;white-space:nowrap;margin:0 0 5px;font-size:13px;font-weight:650;line-height:1.3;overflow:hidden}.region-card-info>span{color:#87938b;font-size:10px}.region-card-actions{opacity:0;justify-content:flex-end;gap:10px;margin-top:8px;transition:opacity .12s;display:flex}.region-card:hover .region-card-actions,.region-card:focus-within .region-card-actions{opacity:1}.region-card-actions button,.region-edit-form button{color:#64816e;cursor:pointer;background:0 0;border:0;padding:0;font:500 10px Roboto,sans-serif}.region-card-actions button:hover,.region-edit-form button:hover{color:#1f7048;text-decoration:underline}.region-card-actions .region-delete-button{color:#a47777}.region-card-actions .region-delete-button:hover{color:#b33b3b}.region-edit-form{grid-template-columns:1fr auto auto;align-items:center;gap:7px;min-height:100%;display:grid}.region-edit-form input{box-sizing:border-box;border:1px solid #b8d5c1;border-radius:5px;outline:none;width:100%;min-width:0;height:31px;padding:0 7px;font:11px Roboto,sans-serif}.region-edit-form input:focus{box-shadow:0 0 0 2px #2878501a}.region-edit-form button:disabled{opacity:.45;cursor:not-allowed}.regions-message{color:#849188;flex:1;place-items:center;min-height:0;font-size:13px;display:grid}.regions-modal-backdrop{z-index:200;background:#17241c66;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.regions-modal{box-sizing:border-box;background:#fff;border:1px solid #e8ede9;border-radius:12px;width:min(360px,100%);padding:24px;position:relative;box-shadow:0 16px 48px #142b1b2e}.regions-modal h2{color:#26392d;margin:0 0 18px;font-size:18px;font-weight:700}.regions-modal-close{color:#78857c;cursor:pointer;background:0 0;border:0;padding:4px 0;font:11px Roboto,sans-serif;position:absolute;top:14px;right:15px}.regions-modal form{flex-direction:column;gap:7px;display:flex}.regions-modal label{color:#647269;font-size:11px;font-weight:600}.regions-modal input{border:1px solid #dfe7e0;border-radius:7px;outline:none;height:38px;padding:0 10px;font:12px Roboto,sans-serif}.regions-modal input:focus{border-color:#69a782;box-shadow:0 0 0 3px #28785014}.regions-modal-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.regions-modal-actions button{color:#617067;cursor:pointer;background:#fff;border:1px solid #e0e7e1;border-radius:7px;min-height:34px;padding:0 12px;font:600 11px Roboto,sans-serif}.regions-modal-actions button:last-child{color:#fff;background:#287850;border-color:#287850}.regions-modal-actions button:last-child:hover:not(:disabled){background:#1d6741}.regions-modal-actions button:disabled{opacity:.5;cursor:not-allowed}@media (width<=1050px){.regions-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=760px){.regions-page{height:calc(100dvh - 92px)}.regions-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(72px,auto);gap:7px}.region-card{padding:9px}.region-card-actions{opacity:1;gap:8px}}@media (width<=520px){.regions-header h1{font-size:22px}.regions-header p{font-size:11px}.regions-add-button{min-height:34px;padding:0 10px;font-size:11px}.regions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.region-card-info h2{font-size:12px}.region-card-actions{gap:6px}.region-card-actions button{font-size:9px}}.modal-overlay{z-index:100;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:14px;flex-direction:column;width:100%;max-width:560px;max-height:90vh;font-family:Roboto,sans-serif;display:flex;box-shadow:0 12px 40px #00000040}.user-form-modal{border-radius:12px;max-width:480px}.user-form-modal .modal-header{padding:18px 22px 14px}.user-form-modal .modal-form{padding:4px 22px 16px}.user-form-modal .form-row{margin-bottom:12px}.user-form-modal .form-row input,.user-form-modal .form-row select{padding:9px 11px}.user-form-modal .modal-footer{padding:13px 22px}.user-form-modal .modal-footer button{padding:9px 16px;font-size:13px}.modal-header{border-bottom:1px solid #eee;flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:22px 26px 18px;display:flex}.modal-header h2{color:#212121;margin:0;font-size:17px;font-weight:700}.modal-subtitle{color:#9e9e9e;margin:4px 0 0;font-size:11.5px}.modal-close{color:#bdbdbd;cursor:pointer;background:0 0;border:none;padding:0 0 0 12px;font-size:24px;line-height:1}.modal-close:hover{color:#d32f2f}.modal-form{flex:1;padding:4px 26px 20px;overflow-y:auto}.form-section{border-bottom:1px solid #f5f5f5;padding:18px 0}.form-section:last-of-type{border-bottom:none}.form-section-header{justify-content:space-between;align-items:center;display:flex}.form-section-title{color:#178a50;text-transform:uppercase;letter-spacing:.6px;margin:0 0 14px;font-size:12px;font-weight:700}.form-section-header .form-section-title{margin-bottom:0}.form-optional{color:#9e9e9e;background:#f5f5f5;border-radius:12px;padding:2px 9px;font-size:10.5px;font-weight:500}.form-section-note{color:#9e9e9e;margin:8px 0 14px;font-size:11.5px}.form-row{margin-bottom:14px}.form-row:last-child{margin-bottom:0}.form-row-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-row label{color:#424242;margin-bottom:6px;font-size:12.5px;font-weight:600;display:block}.required{color:#d32f2f}.form-row input,.form-row select,.form-row textarea{box-sizing:border-box;color:#212121;background:#fff;border:1px solid #e0e0e0;border-radius:8px;width:100%;padding:10px 12px;font-family:Roboto,sans-serif;font-size:13px;transition:border-color .15s,box-shadow .15s}.form-row input::placeholder,.form-row textarea::placeholder{color:#bdbdbd}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:#178a50;outline:none;box-shadow:0 0 0 3px #178a501a}.form-row textarea{resize:vertical}.form-hint{color:#9e9e9e;margin-top:6px;font-size:10.5px;display:block}.superficie-inputs{grid-template-columns:1fr 1fr;gap:14px;display:grid}.superficie-unit{position:relative}.superficie-unit input{padding-right:62px}.superficie-unit span{color:#9e9e9e;pointer-events:none;font-size:11.5px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.documents-fields{flex-direction:column;gap:18px;display:flex}.modal-error{color:#d32f2f;background:#fdecea;border-radius:8px;margin-top:4px;padding:10px 14px;font-size:12.5px;font-weight:500}.modal-footer{background:#fafafa;border-top:1px solid #eee;border-radius:0 0 14px 14px;flex-shrink:0;gap:10px;padding:16px 26px;display:flex}.modal-footer button{cursor:pointer;border-radius:8px;padding:11px 20px;font-family:Roboto,sans-serif;font-size:13.5px;font-weight:600;transition:all .15s}.modal-footer .btn-primary{color:#fff;background:#178a50;border:none;flex:1}.modal-footer .btn-primary:hover:not(:disabled){background:#136b3e}.modal-footer .btn-primary:disabled{opacity:.6;cursor:not-allowed}.modal-footer .btn-secondary{color:#616161;background:#fff;border:1px solid #e0e0e0}.modal-footer .btn-secondary:hover{color:#212121;border-color:#bdbdbd}@media (width<=560px){.form-row-grid,.superficie-inputs{grid-template-columns:1fr}}.admin-page{font-family:Roboto,sans-serif}.admin-page h1{color:#212121;margin:0 0 16px;font-size:20px;font-weight:700}.admin-tabs{border-bottom:1px solid #e0e0e0;gap:4px;margin-bottom:20px;display:flex}.admin-tab{color:#757575;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-family:Roboto,sans-serif;font-size:13px;font-weight:600}.admin-tab:hover{color:#212121}.admin-tab.active{color:#178a50;border-bottom-color:#178a50}.admin-panel-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.admin-panel-title{color:#757575;font-size:13px;font-weight:500}.btn-primary{color:#fff;cursor:pointer;background:#178a50;border:none;border-radius:6px;padding:9px 16px;font-family:Roboto,sans-serif;font-size:13px;font-weight:600}.btn-primary:hover{background:#136b3e}.admin-error{color:#d32f2f;background:#fdecea;border-radius:6px;margin-bottom:14px;padding:10px 14px;font-size:13px}.admin-loading,.admin-empty{color:#9e9e9e;text-align:center;padding:24px;font-size:13.5px}.user-list{flex-direction:column;gap:8px;display:flex}.user-row{background:#fff;border:1px solid #e2e8e3;border-radius:9px;grid-template-columns:34px minmax(150px,1fr) auto auto auto;align-items:center;gap:12px;padding:10px 14px;display:grid;box-shadow:0 2px 8px #20362708}.user-avatar{color:#178a50;background:#e8f5ec;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:flex}.user-info{flex-direction:column;flex:1;min-width:0;display:flex}.user-nom{color:#212121;font-size:13.5px;font-weight:600}.user-vous{color:#9e9e9e;font-size:12px;font-weight:400}.user-email{color:#9e9e9e;font-size:11.5px}.user-role{text-transform:capitalize;border-radius:12px;flex-shrink:0;padding:3px 10px;font-size:10.5px;font-weight:600}.role-admin{color:#b8860b;background:#fff4e0}.role-user{color:#757575;background:#f0f0f0}.user-actions{flex-wrap:wrap;gap:6px;display:flex}.user-date{color:#89918b;white-space:nowrap;font-size:11px}.btn-mini{color:#616161;cursor:pointer;background:0 0;border:1px solid #e0e0e0;border-radius:6px;padding:6px 12px;font-family:Roboto,sans-serif;font-size:11.5px;font-weight:500}.btn-mini:hover{color:#212121;border-color:#bdbdbd}.btn-mini-danger{color:#d32f2f;border-color:#f5c6c2}.btn-mini-danger:hover{background:#fdecea;border-color:#d32f2f}.audit-filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.audit-filters input{color:#212121;background:#fff;border:1px solid #e0e0e0;border-radius:6px;flex:1;min-width:200px;padding:9px 12px;font-family:Roboto,sans-serif;font-size:13px}.audit-filters input:focus{border-color:#178a50;outline:none}.action-tabs{flex-wrap:wrap;gap:6px;display:flex}.action-tab{color:#616161;cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:20px;padding:7px 14px;font-family:Roboto,sans-serif;font-size:12px;font-weight:500}.action-tab:hover{border-color:#178a50}.action-tab.active{color:#fff;background:#178a50;border-color:#178a50}.audit-list{flex-direction:column;gap:7px;display:flex}.audit-row{background:#fff;border:1px solid #e2e8e3;border-radius:9px;align-items:flex-start;gap:12px;padding:11px 14px;display:flex}.audit-badge{text-transform:uppercase;border-radius:10px;flex-shrink:0;align-items:center;margin-top:1px;padding:3px 9px;font-size:10px;font-weight:700;display:inline-flex}.action-creation{color:#178a50;background:#e8f5ec}.action-modification{color:#b8860b;background:#fff4e0}.action-suppression{color:#d32f2f;background:#fdecea}.action-autre{color:#757575;background:#f0f0f0}.audit-details{color:#303833;font-size:13px}.audit-info{flex-direction:column;min-width:0;display:flex}.audit-meta{color:#89918b;margin-top:3px;font-size:11px}@media (width<=760px){.user-row{grid-template-columns:34px minmax(0,1fr) auto;gap:10px}.user-info{grid-column:2/-1}.user-role{grid-area:2/2;justify-self:start}.user-date{grid-area:3/2/auto/-1}.user-actions{grid-area:4/2/auto/-1}.audit-row{gap:9px;padding:10px 12px}.audit-details{min-width:0}}@media (width>=700px){.user-date{display:inline}}.audit-pagination{justify-content:center;align-items:center;gap:16px;margin-top:18px;display:flex}.audit-pagination button{color:#424242;cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:7px 14px;font-family:Roboto,sans-serif;font-size:12.5px}.audit-pagination button:disabled{opacity:.4;cursor:not-allowed}.audit-pagination span{color:#757575;font-size:12.5px}.ie-page{max-width:700px;margin:0 auto;font-family:Roboto,sans-serif}.ie-header{text-align:left;align-items:center;gap:8px;width:min(100%,640px);margin:0 auto 14px;display:flex}.ie-header h1{color:#212121;margin:0;font-size:21px;font-weight:700}.ie-title-icon{color:#178a50;flex-shrink:0}.ie-subtitle{color:#9e9e9e;margin:5px 0 0;font-size:12.5px}.ie-tabs{background:#f5f7f5;border:1px solid #e8ece9;border-radius:10px;gap:4px;width:min(100%,640px);margin:0 auto 16px;padding:4px;display:flex}.ie-tabs button{color:#66716a;cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:7px;min-height:38px;font:600 12.5px Roboto,sans-serif;transition:color .15s,background-color .15s,box-shadow .15s;display:flex}.ie-tabs button.active{color:#178a50;background:#fff;box-shadow:0 1px 4px #0000001a}.ie-tabs button:focus-visible{outline-offset:2px;outline:2px solid #178a50}.ie-panel{width:min(100%,760px);margin:0 auto}.ie-card{background:#fff;border:1px solid #eee;border-radius:14px;padding:14px 18px;box-shadow:0 2px 12px #0000000a}.ie-card-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.ie-card-icon{color:#178a50}.ie-card h2{color:#212121;margin:0;font-size:14px;font-weight:700}.ie-desc{color:#9e9e9e;margin:0 0 8px;font-size:12px;line-height:1.35}.ie-steps{border-bottom:1px solid #eee;gap:8px;margin:7px 0 9px;padding-bottom:7px;display:flex}.ie-step{color:#858585;align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:flex}.ie-step b{color:#66716a;background:#f0f2f0;border-radius:50%;place-items:center;width:22px;height:22px;font-size:11px;display:grid}.ie-step.is-current{color:#176b42}.ie-step.is-current b{color:#178a50;background:#e4f3e9}.ie-section-title{color:#303833;margin:9px 0 5px;font-size:13px;font-weight:700}.ie-section-title span{color:#858585;font-size:11px;font-weight:400}.ie-export-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 12px;display:grid}.ie-filter-field{color:#424242;flex-direction:column;gap:6px;min-width:0;font-size:11.5px;font-weight:600;display:flex}.ie-filter-search{grid-column:1/-1}.ie-filter-field input,.ie-filter-field select{box-sizing:border-box;color:#212121;background:#fff;border:1px solid #dadada;border-radius:7px;width:100%;min-height:32px;padding:8px 10px;font:12px Roboto,sans-serif}.ie-filter-field input:focus,.ie-filter-field select:focus{border-color:#178a50;outline:2px solid #178a501f}.ie-filter-field select:disabled{color:#999;background:#f5f5f5}.ie-export-summary{color:#37443c;background:#f4f7f5;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:7px 0;padding:7px 10px;font-size:12.5px;font-weight:600;display:flex}.ie-export-summary button{color:#178a50;cursor:pointer;background:0 0;border:0;padding:4px 0 4px 8px;font:600 11px Roboto,sans-serif}.ie-export-summary button:disabled{color:#bdbdbd;cursor:default}.ie-toggle{background:0 0;border-radius:9px;gap:10px;margin-bottom:8px;padding:0;display:flex}.ie-toggle button{color:#424242;cursor:pointer;background:#fff;border:1px solid #dadada;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:6px;padding:7px 10px;font-family:Roboto,sans-serif;font-size:12.5px;font-weight:500;display:flex}.ie-toggle button.active{color:#178a50;background:#f0f8f3;border-color:#178a50;font-weight:700;box-shadow:0 0 0 1px #178a50}.ie-import-types .ie-type-card,.ie-import-types button{justify-content:flex-start;min-height:44px;padding:8px 12px}.ie-import-types button.active{color:#178a50}.ie-import-hint{color:#77827b;margin:-3px 0 8px;font-size:11px}.ie-dropzone{color:#466151;cursor:pointer;background:#f8fbf9;border:1.5px dashed #aebbb2;border-radius:9px;flex-direction:column;align-items:center;gap:8px;width:100%;margin-bottom:8px;padding:12px 18px;font-family:Roboto,sans-serif;font-size:13px;transition:border-color .15s,color .15s;display:flex}.ie-dropzone:hover{color:#178a50;border-color:#178a50}.ie-file{color:#178a50;background:#fafafa;border:1px solid #e0e0e0;border-radius:9px;align-items:center;gap:10px;margin-bottom:14px;padding:12px 14px;display:flex}.ie-file-name{color:#212121;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12.5px;overflow:hidden}.ie-file-remove{color:#9e9e9e;cursor:pointer;background:0 0;border:none;display:flex}.ie-file-remove:hover{color:#d32f2f}.ie-sheet-select{color:#424242;flex-direction:column;gap:6px;margin:0 0 14px;font-size:12px;font-weight:600;display:flex}.ie-sheet-select select{color:#212121;background:#fff;border:1px solid #dadada;border-radius:7px;width:100%;padding:9px 10px;font:12px Roboto,sans-serif}.ie-preview{background:#fbfcfb;border:1px solid #e5eae6;border-radius:9px;margin:0 0 8px;padding:7px}.ie-preview-heading{color:#424242;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;font-size:11.5px;display:flex}.ie-preview-heading span,.ie-preview small{color:#858585;font-size:10.5px}.ie-preview-warning{color:#8a5a00;background:#fff7e6;border-radius:6px;margin-bottom:8px;padding:8px 9px;font-size:11px;line-height:1.45}.ie-import-analysis{background:#f8faf8;border:1px solid #dde8e0;border-radius:9px;margin:0 0 14px;padding:12px}.ie-import-analysis-heading>div{color:#26352b;justify-content:space-between;align-items:baseline;gap:10px;font-size:12px;display:flex}.ie-import-analysis-heading span{color:#68766d;font-size:10.5px}.ie-import-analysis-heading p{color:#68766d;margin:5px 0 10px;font-size:10.5px;line-height:1.45}.ie-import-category-counts{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:10px;display:grid}.ie-import-category-counts div{background:#fff;border:1px solid #e3e9e4;border-radius:7px;flex-direction:column;gap:3px;min-width:0;padding:8px 9px;display:flex}.ie-import-category-counts span{color:#68766d;font-size:9.5px}.ie-import-category-counts strong{color:#24734b;font-size:17px}.ie-import-details summary{color:#386148;cursor:pointer;font-size:10.5px;font-weight:600}.ie-import-table-wrap{max-height:340px;margin-top:8px;overflow:auto}.ie-import-table{min-width:900px}.ie-import-table th,.ie-import-table td{overflow-wrap:anywhere;white-space:pre-wrap;max-width:260px}.ie-import-table td:first-child{white-space:nowrap;max-width:none}.ie-preview-table-wrap{background:#fff;border:1px solid #e7e7e7;border-radius:6px;max-height:105px;overflow:auto}.ie-preview-table{border-collapse:collapse;width:100%;font-size:10.5px}.ie-preview-table th,.ie-preview-table td{text-align:left;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid #eee;max-width:150px;padding:6px 8px;overflow:hidden}.ie-preview-table th{color:#526057;background:#f5f7f5;font-weight:700;position:sticky;top:0}.ie-preview small{margin-top:6px;display:block}.ie-alert-erreur{color:#d32f2f;background:#fdecea;border-radius:7px;margin-bottom:12px;padding:9px 12px;font-size:12px}.ie-submit{color:#fff;cursor:pointer;background:#178a50;border:none;border-radius:9px;width:100%;min-height:34px;padding:7px 10px;font-family:Roboto,sans-serif;font-size:13px;font-weight:600;transition:background .15s}.ie-submit:hover:not(:disabled){background:#136b3e}.ie-submit:disabled{opacity:.5;cursor:not-allowed}.ie-submit.is-loading:disabled{opacity:1;cursor:progress;background:#136b3e;box-shadow:0 0 0 3px #178a501f}.ie-submit-loading-label{align-items:center;display:inline-flex}.ie-loading-dots{margin-left:3px;display:inline-flex}.ie-loading-dots i{font-style:normal;animation:.9s ease-in-out infinite ie-loading-dot}.ie-loading-dots i:nth-child(2){animation-delay:.15s}.ie-loading-dots i:nth-child(3){animation-delay:.3s}@keyframes ie-loading-dot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.ie-loading-dots i{animation:none}}.ie-rapport{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:16px;display:flex}.ie-rapport-item{color:#424242;align-items:center;gap:5px;font-size:12px;display:flex}.ie-icon-ok{color:#178a50}.ie-icon-maj{color:#f9a825}.ie-icon-err{color:#d32f2f}.ie-erreurs{color:#757575;background:#fafafa;border-radius:7px;max-height:140px;margin-top:12px;padding:8px 12px;font-size:11.5px;overflow-y:auto}.ie-erreurs div{padding:3px 0}@media (width<=640px){.ie-card{padding:16px 14px}.ie-header h1{font-size:19px}.ie-steps{gap:8px}.ie-step{gap:5px;font-size:10px}.ie-step b{width:22px;height:22px}.ie-export-filters{grid-template-columns:1fr}.ie-filter-search{grid-column:auto}.ie-import-analysis{padding:9px}.ie-import-category-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}.stats-page{color:#26372e;text-align:left;width:min(1100px,100%);margin:0 auto;font-family:Roboto,sans-serif}.stats-header{justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px;display:flex}.stats-header h1{color:#20352a;letter-spacing:-.035em;margin:0;font-size:26px;font-weight:700;line-height:1.2}.stats-header p{color:#77847b;margin:5px 0 0;font-size:13px}.stats-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.stats-summary-item{box-sizing:border-box;background:#fff;border:1px solid #e2e9e3;border-radius:11px;justify-content:space-between;align-items:center;gap:10px;min-height:76px;padding:13px 17px;display:flex}.stats-summary-item span{color:#6f7e73;font-size:12px}.stats-summary-item strong{color:#287850;letter-spacing:-.035em;white-space:nowrap;font-size:24px;font-weight:700}.stats-summary-item small{color:#77847b;letter-spacing:0;font-size:12px;font-weight:500}.stats-summary-alert{background:#fff9f8;border-color:#f0d2ce}.stats-summary-alert strong{color:#b44b43}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.stats-panel{box-sizing:border-box;background:#fff;border:1px solid #e2e9e3;border-radius:12px;flex-direction:column;min-width:0;min-height:310px;padding:17px 18px 13px;display:flex;box-shadow:0 3px 12px #1e362609}.stats-panel-regions,.stats-panel-statuts{grid-column:1/-1}.stats-panel-evolution{grid-column:1/-1;min-height:300px}.stats-panel-heading{flex:none;justify-content:space-between;align-items:flex-start;gap:12px;min-height:43px;margin-bottom:11px;display:flex}.stats-panel-heading h2{color:#2d4034;letter-spacing:-.015em;margin:0;font-size:15px;font-weight:700}.stats-panel-heading p{color:#87938b;margin:5px 0 0;font-size:11px}.stats-panel-heading>span{color:#728078;background:#fbfcfb;border:1px solid #e7eee8;border-radius:6px;flex:none;padding:5px 8px;font-size:10px}.stats-panel>.recharts-responsive-container{flex:auto;min-height:0}.stats-graph-empty{color:#87938b;flex:1;place-items:center;min-height:170px;font-size:12px;display:grid}.stats-tooltip{color:#526057;background:#fff;border:1px solid #e2e9e3;border-radius:8px;padding:10px 12px;font:11px Roboto,sans-serif;box-shadow:0 6px 20px #1c2e2221}.stats-tooltip-label{color:#2d4034;margin-bottom:5px;font-weight:700}.stats-tooltip-row{align-items:center;gap:6px;line-height:1.65;display:flex}.stats-tooltip-row strong{color:#263b2e}.stats-no-data,.stats-message{color:#78857c;place-items:center;min-height:240px;font-size:14px;display:grid}.stats-message-error{color:#a23f3f}@media (width<=900px){.stats-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-grid{grid-template-columns:1fr}.stats-panel-regions,.stats-panel-evolution{grid-column:auto}}@media (width<=520px){.stats-header h1{font-size:23px}.stats-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stats-summary-item{flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;min-height:68px;padding:10px 12px}.stats-summary-item span{font-size:10px}.stats-summary-item strong{font-size:20px}.stats-panel{min-height:300px;padding:14px 12px 10px}.stats-panel-evolution{min-height:285px}.stats-panel-heading h2{font-size:13px}}.layout{background:#fff;height:100vh;font-family:Roboto,sans-serif;display:flex}.sidebar{background:#212121;flex-direction:column;flex-shrink:0;width:220px;height:100vh;display:flex;position:sticky;top:0}.sidebar-logo{border-bottom:1px solid #3a3a3a;justify-content:center;align-items:center;padding:20px 16px;display:flex}.sidebar-nav{flex-direction:column;gap:2px;padding:12px 8px;display:flex}.sidebar-footer{border-top:1px solid #3a3a3a;margin-top:auto;padding:8px}.sidebar-logout{cursor:pointer;background:0 0;border:none;width:100%;font-family:Roboto,sans-serif}.sidebar-logout:hover{color:#f5a9a9;background:#3a1f1f}.sidebar-link{color:#bdbdbd;border-radius:6px;align-items:center;gap:10px;padding:10px 12px;font-size:13.5px;font-weight:500;text-decoration:none;transition:background-color .15s;display:flex}.sidebar-link:hover{color:#fff;background:#2c2c2c}.sidebar-link.active{color:#fff;background:#178a50}.sidebar-icon{flex-shrink:0}.sidebar-divider{background:#3a3a3a;height:1px;margin:8px}.main-area{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{z-index:10;background:#fff;border-bottom:1px solid #e0e0e0;flex-shrink:0;justify-content:space-between;align-items:center;height:68px;padding:0 28px;display:flex;position:sticky;top:0}.topbar-brand{align-items:center;gap:14px;min-width:0;display:flex}.topbar-user{align-items:center;gap:12px;display:flex}.topbar-username{color:#212121;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;overflow:hidden}.topbar-role{color:#178a50;text-transform:capitalize;background:#e8f5ec;border-radius:12px;align-items:center;gap:5px;padding:3px 10px;font-size:11px;font-weight:500;display:inline-flex}.content{background:#fafafa;flex:1;min-height:0;padding:24px;overflow-y:auto}.main-area{min-height:0}@media (width<=768px){.sidebar{width:64px}.sidebar-logo{padding:12px 4px}.sidebar-logo svg{width:48px;height:48px}.sidebar-link{justify-content:center;padding:12px 0}.sidebar-label{display:none}.topbar{padding:0 14px}.topbar-brand{gap:9px}.topbar-username{max-width:42vw;font-size:12.5px}}
