@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap";:root{color:#172033;background:#f4f6f2;font-family:DM Sans,Inter,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f4f6f2}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em}h1,h2{font-family:Fraunces,Georgia,serif}h1{font-size:clamp(1.55rem,2vw,2rem)}h2{font-size:clamp(1.5rem,2.25vw,2.25rem);line-height:1.12}h3{font-size:1.05rem}small{color:#667188}code{font-size:.85em;background:#edf0f4;padding:.1rem .25rem;border-radius:4px}.app-shell{display:grid;grid-template-columns:246px minmax(0,1fr) 365px;min-height:100vh}.sidebar{display:flex;flex-direction:column;padding:24px 15px 18px;background:#11263c;color:#dbe8ee}.brand{display:flex;align-items:center;gap:10px;margin:0 8px 42px}.brand strong{display:block;color:#fff;font-size:1.04rem;letter-spacing:-.03em}.brand small{display:block;margin-top:2px;color:#9fb4c1;font-size:.68rem}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border-radius:10px 10px 3px 3px;background:#4fc694;color:#103047;font-family:Fraunces,serif;font-weight:700;font-size:1.25rem}.sidebar nav{display:grid;gap:4px}.nav-link{display:flex;align-items:center;gap:13px;width:100%;border:0;border-radius:10px;padding:11px 12px;color:#afc0cd;background:transparent;font-weight:600;font-size:.88rem;text-align:left}.nav-link:hover,.nav-link.active{background:#1b3852;color:#fff}.nav-link span{display:grid;place-items:center;width:16px;color:#7fdfb6;font-size:1.08rem}.sidebar-bottom{margin-top:auto;border-top:1px solid rgba(218,239,244,.13);padding-top:15px}.sidebar-bottom .nav-link{text-decoration:none}.ia-status{display:flex;align-items:center;gap:8px;margin:15px 11px 0;color:#9fb4c1;font-size:.72rem}.ia-status i{width:8px;height:8px;border-radius:50%;background:#a6b1b9}.ia-status.online i{background:#4fc694;box-shadow:0 0 0 4px #4fc69421}.main-content{min-width:0;padding:0 36px 36px;overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:108px;border-bottom:1px solid #dce1e1}.topbar h1{margin:0}.eyebrow{margin-bottom:6px;color:#648071;font-size:.69rem;font-weight:700;letter-spacing:.095em;text-transform:uppercase}.topbar-actions,.action-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.button{border:1px solid transparent;border-radius:9px;padding:10px 14px;font-weight:700;font-size:.8rem;transition:.18s ease}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{color:#fff;background:#13795f;box-shadow:0 5px 13px #0d695029}.button.primary:hover{background:#0c604a}.button.ghost{border-color:#d5dce0;background:#fff;color:#425066}.button.subtle{background:#e3f3eb;color:#0f7659}.wide-button{width:100%;justify-content:center}.file-button{display:inline-flex;align-items:center}.file-button input{display:none}.view-container{max-width:1290px;margin:28px auto 0}.dashboard,.page-grid,.dossier-layout{display:grid;gap:20px}.hero-card{display:flex;justify-content:space-between;min-height:225px;overflow:hidden;border-radius:18px;padding:34px 38px;color:#f8fffc;background:linear-gradient(118deg,#123549,#1c5a59)}.hero-card>div:first-child{max-width:620px}.hero-card h2{max-width:520px;margin:0 0 12px;font-size:clamp(2rem,3vw,3.15rem)}.hero-card p:not(.eyebrow){max-width:560px;margin-bottom:24px;color:#d3e5de;line-height:1.55}.hero-card .eyebrow{color:#8fddb7}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.hero-card .subtle{color:#f6fffb;background:#ffffff1f}.hero-illustration{position:relative;align-self:center;width:240px;color:#d3f3e1bf;font-size:145px;text-align:center}.hero-illustration span{position:relative;z-index:2}.hero-illustration i{position:absolute;width:84px;height:84px;border-radius:50%;border:1px solid rgba(141,233,186,.28)}.hero-illustration i:nth-child(2){left:10px;top:16px}.hero-illustration i:nth-child(3){right:8px;bottom:2px;width:121px;height:121px}.hero-illustration i:nth-child(4){right:0;top:-31px;width:53px;height:53px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric{min-height:123px;padding:18px;border:1px solid #e0e5e5;border-radius:13px;background:#fff}.metric p{margin-bottom:10px;color:#6c788b;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.metric strong{display:block;margin-bottom:7px;color:#1f2c3c;font-size:1.32rem;letter-spacing:-.04em}.metric small{font-size:.72rem}.metric.accent{border-color:#acd9c5;background:#eff9f4}.metric.accent strong{color:#107456}.two-columns{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.panel{border:1px solid #e0e5e5;border-radius:14px;padding:24px;background:#fff;box-shadow:0 4px 13px #1d304106}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:16px}.panel-heading h2,.panel-heading h3{margin-bottom:0}.tag,.confidence{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border-radius:100px;color:#697789;background:#f1f4f3;font-size:.68rem;font-weight:700;white-space:nowrap}.tag.success{color:#0d7658;background:#e3f4ea}.steps{display:grid;gap:3px;margin:0;padding:0;list-style:none}.steps li{display:grid;grid-template-columns:29px 1fr auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #edf0ef}.steps li:last-child{border-bottom:0}.steps b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;color:#6b7689;background:#eef1f0;font-size:.72rem}.steps .done b{color:#fff;background:#2ca97a}.steps strong,.steps small{display:block}.steps strong{margin-bottom:3px;font-size:.85rem}.steps small{font-size:.72rem}.steps button{border:0;color:#168061;background:transparent;font-size:.74rem;font-weight:700}.warning-panel{background:#fdfdf9}.alert{margin:11px 0;border-left:3px solid #b0bac0;padding:9px 11px;border-radius:0 6px 6px 0;background:#f5f7f8;font-size:.77rem}.alert p{margin:5px 0 0;color:#5c6b7a;line-height:1.4}.alert.bloquant{border-color:#d9605a;background:#fff3f1}.alert.attention{border-color:#d89c32;background:#fff9e9}.alert.info{border-color:#5b90c7;background:#f0f7ff}.muted{color:#758094;font-size:.79rem;line-height:1.5}.page-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr)}.form-panel{min-width:0}.intro{max-width:670px;margin-bottom:22px;color:#627084;line-height:1.55;font-size:.88rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}label{display:grid;gap:6px;color:#546176;font-size:.74rem;font-weight:700}label.wide{grid-column:1 / -1}input,textarea,select{width:100%;border:1px solid #d9e0e2;border-radius:8px;outline:none;padding:9px 10px;color:#203044;background:#fbfcfc;font-size:.84rem;font-weight:500}textarea{min-height:83px;resize:vertical}input:focus,textarea:focus,select:focus{border-color:#39a87e;box-shadow:0 0 0 3px #2da77b1f}label small{margin-top:-28px;margin-right:10px;justify-self:end;pointer-events:none}.check{display:flex;align-items:center;gap:9px;min-height:38px}.check input{width:16px;height:16px;accent-color:#147c60}.action-row{margin-top:20px}.action-row .muted{margin-left:4px}.map-card{padding:0;overflow:hidden}.map-placeholder{position:relative;display:grid;place-content:center;min-height:274px;overflow:hidden;color:#244b4a;background:#dcece0;text-align:center}.map-placeholder span{z-index:1;color:#218b69;font-size:3.2rem}.map-placeholder strong,.map-placeholder small{z-index:1}.map-placeholder strong{margin-top:8px;font-size:1.05rem}.map-placeholder small{margin-top:3px;color:#46675d}.map-roads{position:absolute;inset:-40px;background:repeating-linear-gradient(30deg,transparent 0 42px,rgba(255,255,255,.75) 43px 51px,transparent 52px 110px),repeating-linear-gradient(120deg,transparent 0 72px,rgba(255,255,255,.56) 73px 79px,transparent 80px 148px);transform:rotate(7deg)}.map-summary{display:grid;grid-template-columns:1fr 1fr;gap:6px 13px;padding:18px 20px;font-size:.74rem}.map-summary span{color:#778396}.map-summary strong{color:#2e3d4d;text-align:right}.full-width{grid-column:1 / -1}.veille-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.veille-grid strong{font-size:.78rem}.veille-grid p{margin:6px 0 0;color:#627084;font-size:.78rem;line-height:1.45}.plan-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:20px}.plan-canvas-panel{min-width:0;border:1px solid #dbe4e5;border-radius:14px;padding:22px;background:#fff}.plan-svg{display:block;width:100%;min-height:555px;border:1px solid #e3e8e7;border-radius:8px;background:#fbfdfc}.parcel-shape{fill:#4fc69414;stroke:#4fac87;stroke-width:.08;stroke-dasharray:.24 .14}.wall{stroke-linecap:square}.wall.exterieur{stroke:#213b4f}.wall.existant{stroke:#79838a;stroke-dasharray:.15 .09}.wall.interieur{stroke:#547187}.wall.demoli{stroke:#bd5e5a;stroke-dasharray:.16 .08}.pool-shape{fill:#bde7ee;stroke:#59a9bd;stroke-width:.07}.annex-shape{fill:#e3c79d;stroke:#9b7447;stroke-width:.08}.opening{fill:#fff;stroke:#56a8ae;stroke-width:.08}.plan-label,.room-label{fill:#31485c;font-size:.3px;text-anchor:middle;font-weight:700}.room-label{font-size:.27px;font-weight:600}.north{stroke:#13795f;stroke-width:.08;fill:#13795f}.north text{stroke:none;font-size:.28px;font-weight:700}.plan-legend{display:flex;gap:15px;margin-top:14px;color:#617084;font-size:.73rem}.plan-legend span{display:flex;align-items:center;gap:5px}.plan-legend i{display:inline-block;width:17px;height:4px}.legend-wall{background:#213b4f}.legend-parcel{border-top:2px dashed #4fac87}.legend-water{background:#bde7ee}.editeur{display:grid;gap:10px}.editeur-barre{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.editeur-outils,.editeur-reglages{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.outil{display:inline-flex;align-items:center;gap:6px;border:1px solid #dde4e4;border-radius:8px;padding:7px 10px;color:#3d5063;background:#f8fafa;font-size:.73rem;font-weight:700}.outil:hover{border-color:#4cb18a;color:#10745a;background:#eff9f4}.outil.actif{border-color:#13795f;color:#fff;background:#13795f}.outil span{font-size:.95rem;line-height:1}.editeur-reglages label{display:flex;align-items:center;gap:7px;color:#5b6a7d;font-size:.7rem}.editeur-reglages select{width:auto;padding:6px 8px;font-size:.73rem}.editeur-scene{position:relative;overflow:hidden;border:1px solid #e3e8e7;border-radius:10px;background:#fbfdfc;height:555px}.editeur-svg{display:block;width:100%;height:100%;touch-action:none;user-select:none;cursor:grab}.editeur-svg[data-outil=mur],.editeur-svg[data-outil=ouverture],.editeur-svg[data-outil=cote],.editeur-svg[data-outil=piscine],.editeur-svg[data-outil=annexe]{cursor:crosshair}.editeur-svg[data-outil=gomme]{cursor:not-allowed}.editeur-etat{position:absolute;right:10px;bottom:10px;left:10px;display:flex;justify-content:space-between;gap:12px;pointer-events:none;color:#61748a;font-size:.68rem}.editeur-etat span{border-radius:6px;padding:4px 8px;background:#ffffffe6}.editeur-coord{font-family:JetBrains Mono,Consolas,monospace;font-size:.64rem}.ed-parcelle{fill:#4fc69414;stroke:#4fac87;stroke-width:.07;stroke-dasharray:.3 .18}.ed-cloture{stroke:#6b7a84;stroke-width:.12;stroke-dasharray:.35 .18}.ed-piece{fill:#7ea1c421;stroke:none;cursor:pointer}.ed-piece:hover{fill:#7ea1c442}.ed-piece.selectionnee{fill:#2da77b3d}.ed-piece-nom{fill:#31485c;text-anchor:middle;font-weight:700;pointer-events:none}.ed-mur{fill:#22384c;stroke:#16283a;stroke-width:.015;cursor:pointer}.ed-mur.interieur{fill:#5c7488}.ed-mur.existant{fill:#9aa3a9}.ed-mur.demoli{fill:#cf8e8b}.ed-mur:hover{fill:#16a377}.ed-mur.selectionne{fill:#0c8360;stroke:#063f2f;stroke-width:.04}.ed-ouverture-fond{fill:#fbfdfc}.ed-ouverture{stroke-linecap:butt}.ed-ouverture.vitrage{stroke:#56a8ae}.ed-ouverture.porte{stroke:#a97b4c}.ed-ouverture.selectionnee{stroke:#0c8360}.ed-battant{fill:none;stroke:#c3ab90;stroke-width:.02}.ed-piscine{fill:#bde7ee;stroke:#59a9bd;stroke-width:.06;cursor:pointer}.ed-annexe{fill:#e3c79d;stroke:#9b7447;stroke-width:.06;cursor:pointer}.ed-piscine.selectionnee,.ed-annexe.selectionnee{stroke:#0c8360;stroke-width:.11}.ed-poignee{fill:#fff;stroke:#0c8360;stroke-width:.03;cursor:move}.ed-cote-vive{fill:#0c8360;text-anchor:middle;font-weight:700;paint-order:stroke;stroke:#ffffffe6;stroke-width:.06;pointer-events:none}.ed-trace polyline,.ed-trace line{fill:none;stroke:#13795f;stroke-width:.07;stroke-dasharray:.22 .12}.ed-trace circle{fill:#13795f}.ed-mesure line{stroke:#c4713d;stroke-width:.06;stroke-dasharray:.2 .12}.ed-accroche{fill:none;stroke:#e0761f;stroke-width:.035;pointer-events:none}.ed-nord{stroke:#13795f;stroke-width:.09;fill:#13795f}.ed-nord text{stroke:none;text-anchor:middle;font-weight:700}.ed-parcelle.modifiable{fill:#e0761f17;stroke:#e0761f;stroke-width:.09;stroke-dasharray:none}.ed-sommet{fill:#fff;stroke:#e0761f;stroke-width:.04;cursor:move}.ed-sommet:hover,.ed-sommet.actif{fill:#e0761f}.ed-insertion{fill:#fff;stroke:#e0761f;stroke-width:.03;opacity:.75;cursor:copy}.ed-insertion:hover{fill:#ffd9b3;opacity:1}.ed-cote-limite{fill:#b45f13;text-anchor:middle;font-weight:700;paint-order:stroke;stroke:#ffffffeb;stroke-width:.07;pointer-events:none}.ed-rotation line{stroke:#0c8360;stroke-width:.03;stroke-dasharray:.12 .09}.ed-rotation circle{fill:#fff;stroke:#0c8360;stroke-width:.04;cursor:grab}.ed-rotation circle:hover{fill:#b9ebd5}.ed-surface-terrain{fill:#b45f13;text-anchor:middle;font-weight:700;opacity:.5;paint-order:stroke;stroke:#ffffffd9;stroke-width:.1;pointer-events:none}.terrain-rapide{margin-top:6px;border-top:1px solid #e8eceb;padding-top:14px}.terrain-champs{display:grid;grid-template-columns:1fr 1fr;gap:10px}.inscription{display:grid;grid-template-columns:210px minmax(0,1fr);gap:22px;align-items:start}.inscription-fil{display:grid;gap:2px;margin:0;padding:0;list-style:none}.inscription-fil button{display:flex;align-items:center;gap:11px;width:100%;border:0;border-radius:9px;padding:10px 11px;color:#6b7889;background:transparent;font-size:.8rem;font-weight:600;text-align:left}.inscription-fil b{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;color:#6b7689;background:#eef1f0;font-size:.7rem;flex:none}.inscription-fil .actif button{color:#10745a;background:#eff9f4}.inscription-fil .actif b{color:#fff;background:#13795f}.inscription-fil .fait b{color:#fff;background:#2ca97a}.inscription-panneau{min-height:470px;padding:30px}.inscription-panneau h2{margin-bottom:10px}.inscription-navigation{margin-top:26px;border-top:1px solid #eef1f0;padding-top:18px}.choix-projet{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:8px;margin-bottom:22px}.carte-choix{border:1px solid #dfe5e4;border-radius:10px;padding:13px 12px;color:#3f5063;background:#fbfcfc;font-size:.79rem;font-weight:600;text-align:left}.carte-choix:hover{border-color:#4cb18a;background:#f3fbf7}.carte-choix.actif{border-color:#13795f;color:#fff;background:#13795f}.documents-liste{display:grid;gap:8px;margin:18px 0}.document{display:grid;grid-template-columns:32px 1fr auto;gap:13px;align-items:center;border:1px solid #e3e8e7;border-radius:10px;padding:13px;background:#fbfcfc}.document.present{border-color:#b6e0cc;background:#f4fbf7}.document-etat{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;color:#7d8b9c;background:#eef2f3;font-weight:700;font-size:.82rem}.document.present .document-etat{color:#fff;background:#2ba476}.document-info strong{display:block;color:#2b3a4c;font-size:.81rem}.document-info em{color:#9d6323;font-size:.62rem;font-style:normal;font-weight:800;text-transform:uppercase}.document-info small{display:block;margin-top:3px;color:#6a7789;font-size:.71rem;line-height:1.4}.analyse-journal{display:grid;gap:5px;margin:18px 0}.analyse-etape{display:flex;align-items:center;gap:9px;border-radius:7px;padding:8px 11px;color:#3f5366;background:#f4f7f6;font-size:.77rem}.analyse-etape span{color:#2ba476;font-weight:700}.analyse-etape.en-cours{color:#6b7889;background:#fbfbf7}.rotation{display:inline-block;animation:tourne 1.1s linear infinite}@keyframes tourne{to{transform:rotate(360deg)}}.analyse-synthese{margin:18px 0;border-left:3px solid #2ba476;border-radius:0 9px 9px 0;padding:16px 18px;color:#33475c;background:#f4fbf7;font-size:.84rem;line-height:1.6;white-space:pre-wrap}.cerfa-panel{display:grid;gap:4px}.cerfa-panel>.muted{max-width:760px;margin-bottom:4px}.cerfa-liste{display:grid;gap:4px;max-height:420px;overflow-y:auto;margin-top:16px;border:1px solid #e6eaea;border-radius:10px;padding:10px;background:#fbfcfc}.cerfa-ligne{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:12px;align-items:center;border-radius:7px;padding:7px 9px}.cerfa-ligne:hover{background:#f2f6f5}.cerfa-ligne.incertaine{background:#fffaf0}.cerfa-champ strong{display:block;color:#2a3a4c;font-size:.78rem}.cerfa-champ small{display:block;margin-top:2px;color:#8894a5;font-size:.64rem;font-family:JetBrains Mono,Consolas,monospace}.cerfa-ligne input,.cerfa-ligne select{padding:6px 8px;font-size:.76rem}.inspecteur label{margin-bottom:12px}.inspecteur h3{margin-bottom:15px}.inspecteur .alert{margin:4px 0 12px}.vue3d-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:20px}.vue3d-panel{min-width:0;border:1px solid #dbe4e5;border-radius:14px;padding:22px;background:#fff}.vue3d-canvas{width:100%;height:560px;overflow:hidden;border:1px solid #dde4e4;border-radius:10px;background:#dce9f2}.vue3d-canvas canvas{display:block}.vue3d-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-top:14px}.vue3d-views{display:flex;flex-wrap:wrap;gap:6px}.vue3d-views button{border:1px solid #dde4e4;border-radius:7px;padding:7px 10px;color:#3d5063;background:#f7faf9;font-size:.72rem;font-weight:700}.vue3d-views button:hover{border-color:#4cb18a;color:#10745a;background:#eff9f4}.vue3d-sun{display:flex;align-items:center;gap:9px;color:#5b6a7d;font-size:.72rem}.vue3d-sun input{width:130px;accent-color:#147c60}.vue3d-side{display:grid;align-content:start;gap:18px}.vue3d-side .muted{margin:10px 0 14px}.plan-side{display:grid;align-content:start;gap:18px}.plan-side .panel{padding:20px}.plan-side h3{margin:0 0 17px}.plan-side label{margin-bottom:14px}.compact-stats{display:grid;gap:13px}.compact-stats div{display:flex;justify-content:space-between;gap:8px;font-size:.74rem}.compact-stats span{color:#6e7b90}.compact-stats strong{color:#294153}.dossier-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.dossier-summary{grid-column:1 / -1}.summary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:17px 0;border-radius:9px;padding:13px;background:#f4f8f6}.summary-stats div{padding:0 9px;border-right:1px solid #dbe7e0}.summary-stats div:last-child{border-right:0}.summary-stats span,.summary-stats strong{display:block}.summary-stats span{margin-bottom:4px;color:#718073;font-size:.69rem}.summary-stats strong{color:#195f4d;font-size:.89rem}.confidence{color:#14755b;background:#e5f5ec}.question-box{margin-top:14px;border-radius:8px;padding:12px;background:#fff9e9;font-size:.78rem}.question-box ul{margin:8px 0 0;padding-left:18px;color:#675b3f;line-height:1.6}.pieces-page{display:grid;gap:18px}.pieces-header{display:flex;align-items:center;justify-content:space-between;gap:24px}.pieces-header h2{margin-bottom:8px}.pieces-header p{max-width:650px;margin-bottom:0;color:#647187;font-size:.83rem;line-height:1.48}.pieces-list{display:grid;gap:10px}.piece-card{display:grid;grid-template-columns:38px 1fr auto;gap:15px;align-items:start;border:1px solid #e0e6e5;border-radius:12px;padding:17px;background:#fff}.piece-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;color:#738499;background:#eef2f3;font-weight:700}.piece-icon.generated{color:#fff;background:#2ba476}.piece-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.piece-title span{color:#13795f;font-size:.68rem;font-weight:800}.piece-title h3{margin:0;font-size:.93rem}.piece-title em{border-radius:100px;padding:3px 6px;color:#9d6323;background:#fff3db;font-size:.6rem;font-style:normal;font-weight:800;text-transform:uppercase}.piece-main p{margin:7px 0;color:#5f6d80;font-size:.76rem;line-height:1.4}.piece-main small{font-size:.68rem;line-height:1.35}.piece-action{align-self:center}.legal-note{margin:4px 4px 0;color:#768295;font-size:.7rem;line-height:1.45}.empty-state{text-align:center;color:#637187}.agent-panel{display:flex;flex-direction:column;min-height:100vh;border-left:1px solid #dbe3e4;background:#fff}.agent-heading{display:flex;align-items:center;gap:9px;min-height:108px;padding:20px 22px;border-bottom:1px solid #e3e8e7}.agent-heading .avatar{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;color:#134a3f;background:#b9ebd5;font-family:Fraunces,serif;font-weight:700}.agent-heading strong,.agent-heading span{display:block}.agent-heading strong{color:#24354a;font-size:.8rem;letter-spacing:.05em}.agent-heading span{margin-top:2px;color:#738196;font-size:.68rem}.agent-heading a{margin-left:auto;color:#789;font-size:1rem}.chat-log{display:flex;flex:1;flex-direction:column;gap:10px;overflow-y:auto;padding:18px;max-height:calc(100vh - 220px)}.chat-empty{margin-top:20px;border-radius:10px;padding:15px;color:#3f5366;background:#eff7f3;font-size:.79rem;line-height:1.5}.chat-empty p{margin:6px 0 0}.chat-message{max-width:94%;border-radius:10px;padding:10px 12px;color:#34475c;background:#f3f6f7;font-size:.77rem;line-height:1.45;white-space:pre-wrap}.chat-message.user{align-self:flex-end;color:#fff;background:#1b6570}.chat-message p{margin:0}.chat-message small{display:block;margin-top:7px;color:#6d9588;font-size:.65rem}.chat-message.user small{color:#d5edeb}.chat-form{display:grid;grid-template-columns:1fr auto;gap:8px;padding:14px;border-top:1px solid #e4e8e8}.chat-form textarea{min-height:57px;padding:9px;font-size:.73rem}.chat-form .button{align-self:end;padding:10px}.toast{position:fixed;z-index:10;right:387px;bottom:22px;max-width:370px;border-radius:9px;padding:11px 14px;color:#fff;background:#506073;box-shadow:0 8px 24px #111f3033;font-size:.78rem}.toast.succes{background:#16805f}.toast.erreur{background:#c75250}.admin-login{display:grid;place-items:center;min-height:100vh;padding:25px;background:radial-gradient(circle at 80% 20%,#d4eee2,transparent 28%),#f3f6f3}.admin-login .brand{position:fixed;top:25px;left:28px;margin:0}.brand.dark strong{color:#173449}.brand.dark small{color:#758596}.login-card{width:min(100%,450px);border:1px solid #dfe5e3;border-radius:17px;padding:34px;background:#fff;box-shadow:0 18px 60px #193b4117}.login-card h1{margin-bottom:12px;font-size:2rem}.login-card>p{color:#677489;font-size:.83rem;line-height:1.55}.login-card form{display:grid;gap:15px;margin-top:24px}.form-notice{color:#3f6970;font-size:.76rem;line-height:1.4}.admin-shell{max-width:1240px;margin:auto;padding:24px 32px 45px}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:18px}.admin-top .brand{margin:0}.admin-top>div{display:flex;align-items:center;gap:12px}.admin-connected{color:#16805f;font-size:.74rem;font-weight:700}.admin-hero{max-width:780px;padding:64px 0 33px}.admin-hero h1{margin-bottom:14px;font-size:clamp(2.25rem,4vw,4rem);line-height:1.03}.admin-hero p:not(.eyebrow){color:#617084;line-height:1.55}.admin-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px}.routing-panel,.options-panel{grid-column:1 / -1}.quick-providers{display:grid;grid-template-columns:1fr;gap:7px;margin-bottom:16px}.quick-providers button{border:1px solid #dbe4e1;border-radius:8px;padding:10px;color:#1c6854;background:#f3fbf7;font-size:.77rem;font-weight:700;text-align:left}.provider-list{display:grid;gap:6px}.provider-row{display:flex;align-items:center;gap:9px;width:100%;border:1px solid #e1e7e6;border-radius:8px;padding:9px;color:#4d5e6f;background:#fff;text-align:left}.provider-row.selected{border-color:#4cb18a;background:#eff9f4}.provider-row strong,.provider-row small{display:block}.provider-row strong{font-size:.78rem}.provider-row small{margin-top:2px;font-size:.66rem}.provider-row em{margin-left:auto;color:#8090a0;font-size:.62rem;font-style:normal;text-transform:uppercase}.provider-dot{width:8px;height:8px;border-radius:50%;background:#bac3c9}.provider-dot.good{background:#32aa7c}.help-text{margin:15px 0 0;color:#6b788d;font-size:.74rem;line-height:1.45}.route-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.route-choice{display:block;border:1px solid #dee7e4;border-radius:10px;padding:13px;background:#fbfcfc}.route-choice.active{border-color:#45ae85;background:#eff9f4}.route-choice input{float:right;width:15px;height:15px;accent-color:#16805f}.route-choice strong,.route-choice small{display:block}.route-choice strong{margin-bottom:5px;color:#263d4c;font-size:.78rem}.route-choice small{font-size:.66rem;line-height:1.35}.routing-selects{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:16px 0}@media (max-width: 1250px){.app-shell{grid-template-columns:215px minmax(0,1fr) 325px}.main-content{padding:0 22px 28px}.hero-illustration{width:150px;font-size:105px}.toast{right:345px}}@media (max-width: 1000px){.app-shell{grid-template-columns:210px minmax(0,1fr)}.agent-panel{position:fixed;z-index:5;right:0;bottom:0;width:min(365px,100vw);min-height:0;height:42vh;box-shadow:0 -5px 24px #192c3c1f}.chat-log{max-height:none}.toast{right:16px;bottom:calc(42vh + 16px)}.metric-grid{grid-template-columns:repeat(2,1fr)}.plan-layout,.vue3d-layout{grid-template-columns:1fr}.plan-side,.vue3d-side{grid-template-columns:1fr 1fr}.vue3d-canvas{height:420px}.page-grid{grid-template-columns:1fr}.map-card{min-height:250px}.admin-grid{grid-template-columns:1fr}.routing-panel,.options-panel{grid-column:auto}}@media (max-width: 680px){.app-shell{display:block;padding-bottom:39vh}.sidebar{display:none}.main-content{padding:0 15px 20px}.topbar{min-height:82px}.topbar-actions .ghost{display:none}.topbar h1{font-size:1.3rem}.topbar .button.primary{padding:9px;font-size:.68rem}.view-container{margin-top:16px}.hero-card{min-height:auto;padding:25px}.hero-illustration{display:none}.metric-grid,.two-columns,.dossier-layout,.form-grid,.summary-stats,.veille-grid{grid-template-columns:1fr}.two-columns{gap:14px}.summary-stats div{border-right:0;border-bottom:1px solid #dbe7e0;padding:7px 0}.summary-stats div:last-child{border-bottom:0}.pieces-header,.panel-heading{align-items:flex-start;flex-direction:column}.piece-card{grid-template-columns:33px 1fr}.piece-action{grid-column:2}.plan-canvas-panel{padding:12px}.plan-svg{min-height:370px}.plan-side,.vue3d-side{grid-template-columns:1fr}.vue3d-panel{padding:12px}.vue3d-canvas{height:320px}.agent-panel{height:39vh}.toast{bottom:calc(39vh + 12px);right:12px;left:12px;max-width:none}.admin-shell{padding:18px}.admin-hero{padding:45px 0 25px}.route-modes,.routing-selects{grid-template-columns:1fr}.admin-top .admin-connected{display:none}.login-card{padding:25px}}
