/* Interface métier : direction M2 du thème Miroir. Les variables et polices sont dans charte.css. */
:root{--succes:#2F7D4F;--attention:#8A5A18;--fond-succes:#EAF1EB;--fond-attention:#F7EEDB;--largeur:1232px}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--sable);color:var(--ardoise);font-family:var(--f-texte);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
[hidden]{display:none!important}img{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}h1,h2,h3,h4{font-family:var(--f-titre);font-weight:500;line-height:1.12;letter-spacing:-.012em;text-wrap:balance;margin:0}p{margin:0;color:var(--gris);line-height:1.6}small{font-size:13px;color:var(--gris)}
:focus-visible{outline:2px solid var(--ardoise);outline-offset:3px;border-radius:4px}.evitement{position:absolute;left:16px;top:-80px;z-index:100;background:var(--ardoise);color:var(--blanc);padding:12px 16px;border-radius:var(--r-s);text-decoration:none}.evitement:focus{top:8px}
.bouton{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 20px;border:1px solid var(--ardoise);border-radius:var(--r-s);font-weight:500;font-size:15px;line-height:1.2;text-decoration:none;text-align:center;background:transparent;transition:background-color .15s,border-color .15s;white-space:nowrap}.bouton:hover{background:var(--sable-2)}.bouton.principal{background:var(--or);color:var(--ardoise);border-color:var(--or)}.bouton.principal:hover{background:var(--or-fonce);border-color:var(--or-fonce)}.petit{min-height:40px;padding:8px 12px;font-size:14px}.icone,.fermer{border:0;background:transparent;padding:8px;display:grid;place-items:center;min-height:44px;min-width:44px}.fermer{font-size:30px;font-weight:400;line-height:1}.ico{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.surtitre{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--gris);margin:0 0 20px}.surtitre::before{content:"";width:28px;height:2px;background:var(--or);flex:none}
.application{min-height:100vh}.lateral{position:sticky;top:0;z-index:8;display:flex;align-items:center;gap:34px;min-height:84px;padding:16px max(32px,calc((100vw - var(--largeur))/2));background:color-mix(in srgb,var(--sable) 94%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--trait)}.marque{display:flex;align-items:center;gap:16px;flex:none}.logo-officiel{width:114px;height:auto}.nom-atelier{border-left:1px solid var(--trait-fort);padding-left:16px;font-size:14px;color:var(--gris)}.lateral nav{display:flex;gap:4px;flex:1}.nav{display:flex;align-items:center;gap:9px;font-size:15px;padding:10px 12px;border:0;border-radius:6px;background:transparent;white-space:nowrap;position:relative}.nav:hover{background:var(--sable-2)}.nav.actif{background:var(--blanc)}.nav.actif::after{position:absolute;content:"";height:2px;background:var(--or);left:12px;right:12px;bottom:5px}.pastille{display:inline-flex;align-items:center;justify-content:center;font-size:12px;border:1px solid var(--trait);border-radius:999px;min-width:23px;padding:1px 5px;background:var(--blanc)}.rubrique,.lateral-note{display:none}.compte{display:flex;align-items:center;gap:10px;flex:none}.compte strong,.compte small{display:block;font-size:12px;line-height:1.5;font-weight:500}.compte small{font-size:11px;font-weight:400}.avatar{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--trait-fort);border-radius:50%;font-family:var(--f-titre);font-size:13px;background:var(--blanc)}
.entete{display:flex;align-items:center;justify-content:space-between;max-width:var(--largeur);margin:auto;padding:24px 32px 0;font-size:12px;color:var(--gris);gap:16px}.entete strong{font-weight:500}.prive{display:flex;align-items:center;gap:7px;font-size:12px}.prive>span{font-size:8px;color:var(--succes)}.page{max-width:var(--largeur);margin:auto;padding:48px 32px 80px}.titre-page{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;position:relative;margin-bottom:40px}.titre-page h1{font-size:clamp(2.3rem,1.3rem + 2.7vw,3.4rem);line-height:1.04;letter-spacing:-.02em}.titre-page>div:first-child{max-width:650px}.titre-page>div>p:last-child{margin-top:20px;max-width:52ch;font-size:17px}.actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;max-width:440px}.actions #nouveau-batiment{font-size:14px;min-height:40px;padding:8px 12px;border-color:var(--trait-fort)}
.statistiques{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;border:1px solid var(--trait);border-radius:var(--r-m);overflow:hidden;background:var(--trait);margin:0 0 32px}.stat{padding:25px 22px 23px;background:var(--blanc);display:grid;gap:10px}.stat>span{font-size:13px;color:var(--gris)}.stat>strong{font-family:var(--f-titre);font-size:38px;font-weight:500;line-height:1;font-variant-numeric:tabular-nums lining-nums}.stat small{font-size:12px}.stat.entree{background:var(--ardoise);color:var(--blanc)}.stat.entree span,.stat.entree small{color:var(--perle)}
.barre-outils{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.barre-outils>input{max-width:380px;margin:0}.filtres{display:flex;gap:10px;align-items:center}.filtres select{width:auto;max-width:200px;margin:0;font-size:14px}.tableau{background:var(--blanc);border:1px solid var(--trait);border-radius:var(--r-m);overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--gris);padding:17px 18px;border-bottom:1px solid var(--trait);white-space:nowrap}td{padding:24px 18px;font-size:14px;border-bottom:1px solid var(--trait);vertical-align:middle}tbody tr:last-child td{border:0}tbody tr:hover{background:color-mix(in srgb,var(--sable) 25%,var(--blanc))}.bien-cellule{display:flex;gap:16px;align-items:center;min-width:210px}.vignette{width:76px;height:68px;background:var(--sable-2);border-radius:var(--r-s);overflow:hidden;display:grid;place-items:center;flex:none;font-size:26px;color:var(--gris)}.vignette img{width:100%;height:100%;object-fit:cover}.bien-cellule small{display:block;font-size:11px;margin-bottom:5px}.lien-bien{font-family:var(--f-titre);font-size:19px;font-weight:500;line-height:1.25;text-align:left;background:transparent;border:0;padding:0;max-width:280px}.lien-bien:hover{text-decoration:underline;text-decoration-color:var(--or);text-underline-offset:4px}.sous-ligne{display:block;font-size:12px;color:var(--gris);margin-top:6px}.prix{font-family:var(--f-titre);font-size:22px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.badge{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--trait);border-radius:999px;padding:5px 9px;font-size:12px;white-space:nowrap;font-weight:400;background:var(--blanc)}.badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gris)}.badge.a_verifier::before{background:var(--attention)}.badge.valide::before,.badge.publie::before{background:var(--succes)}.badge.archive{color:var(--gris)}.publication-ligne{display:block;font-size:12px;color:var(--gris);margin-top:6px}.pied-liste{display:flex;gap:20px;justify-content:space-between;margin-top:16px;font-size:12px;color:var(--gris)}
.vide{border:1px solid var(--trait);background:var(--blanc);border-radius:var(--r-m);padding:60px 24px;text-align:center}.vide .symbole{font-size:36px;margin-bottom:20px;color:var(--gris)}.vide h2{font-size:30px;margin-bottom:18px}.vide p{max-width:52ch;margin:0 auto 28px;font-size:16px}.batiments{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:24px}.batiment{border:1px solid var(--trait);background:var(--blanc);border-radius:var(--r-m);padding:28px}.batiment .ref{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--gris)}.batiment h2{font-size:28px;margin:20px 0 14px}.batiment p{font-size:15px;margin-bottom:12px}.batiment>.ligne{margin-top:25px;padding-top:20px;border-top:1px solid var(--trait);justify-content:space-between}.ligne{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}.batiment .ligne>.ligne{margin:0}.journal{background:var(--blanc);padding:10px 28px;border:1px solid var(--trait);border-radius:var(--r-m)}.evenement{font-size:14px;padding:20px 0;border-bottom:1px solid var(--trait)}.evenement:last-child{border:0}.evenement strong{font-weight:500}.evenement small{display:block;font-size:12px;margin-top:7px}
label{display:block;font-size:14px;font-weight:500;line-height:1.5}input,select,textarea{width:100%;margin-top:8px;border:1px solid var(--trait-fort);border-radius:var(--r-s);background:var(--blanc);padding:12px 13px;min-width:0;font-size:15px;line-height:1.4}textarea{resize:vertical}label small{display:block;margin-top:7px;font-size:12px;font-weight:400}input:focus,select:focus,textarea:focus{outline:2px solid var(--ardoise);outline-offset:2px}.champs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.champs .large{grid-column:1/-1}.facultatif{font-size:12px;color:var(--gris);font-weight:400}.erreur{font-size:13px;color:var(--erreur);line-height:1.5;white-space:pre-line}.erreur:empty{display:none}.encadre{border:1px solid var(--trait);border-radius:var(--r-s);padding:18px 20px;background:var(--sable);font-size:14px;margin:20px 0}.encadre a{text-underline-offset:3px}.lecture-seule{font-size:14px;padding:14px;border:1px solid var(--trait)}
.connexion{max-width:var(--largeur);min-height:100vh;margin:auto;display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:96px;align-items:center;padding:64px 32px}.connexion-marque{position:relative;padding:24px 0}.connexion-marque::before{content:"";position:absolute;width:560px;height:560px;left:-180px;top:-180px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--or) 38%,transparent),transparent);z-index:-1;pointer-events:none}.connexion-marque>.logo-officiel{width:150px;margin-bottom:72px}.connexion-marque h1{font-size:clamp(2.3rem,1.3rem + 3vw,3.9rem);line-height:1.04;letter-spacing:-.02em}.connexion-marque h1 em{font-style:normal;text-decoration:underline;text-decoration-color:var(--or);text-decoration-thickness:.09em;text-underline-offset:.13em}.connexion-marque>p:not(.surtitre){font-size:18px;max-width:40ch;margin-top:28px}.connexion-marque>small{display:block;font-size:12px;letter-spacing:.07em;margin-top:56px}.connexion-form{padding:36px 32px;border:1px solid var(--trait);border-radius:var(--r-m);background:var(--blanc);box-shadow:var(--ombre)}.connexion-form h2{font-size:32px;margin:0 0 18px}.connexion-form>p{font-size:15px;margin-bottom:28px}.connexion-form label{margin-top:22px}.connexion-form .erreur{margin:16px 0}.connexion-form>.bouton{width:100%;justify-content:space-between;margin:28px 0 20px}.connexion-form>small{display:block;font-size:12px;text-align:center}
#annonce{position:fixed;z-index:30;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);background:var(--ardoise);color:var(--blanc);border:1px solid var(--trait-clair);box-shadow:var(--ombre);padding:16px 24px;border-radius:var(--r-s);font-size:14px}
dialog{border:1px solid var(--trait);border-radius:var(--r-m);padding:0;width:min(920px,calc(100% - 40px));max-height:calc(100vh - 48px);background:var(--blanc);color:var(--ardoise);box-shadow:var(--ombre)}dialog::backdrop{background:color-mix(in srgb,var(--ardoise) 60%,transparent);backdrop-filter:blur(3px)}.dialog-court{max-width:640px}.dialog-entete{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 32px;background:var(--sable);border-bottom:1px solid var(--trait)}.dialog-entete .surtitre{margin-bottom:14px;font-size:11px}.dialog-entete h2{font-size:29px}.onglets{display:flex;gap:24px;padding:0 32px;border-bottom:1px solid var(--trait);overflow-x:auto}.onglets button{background:none;border:0;border-bottom:3px solid transparent;font-size:15px;white-space:nowrap;padding:18px 0;color:var(--gris)}.onglets button[aria-selected=true]{color:var(--ardoise);border-color:var(--or);font-weight:500}.dialog-bien section{padding:32px}.dialog-bien section>h3{font-size:26px;margin-bottom:18px}.dialog-bien section>p{font-size:15px;margin-bottom:20px}.dialog-court .champs{padding:28px 32px}.dialog-court .erreur{margin:0 32px 20px}.section-titre{display:flex;gap:16px;margin:40px 0 24px;align-items:flex-start}.section-titre:first-child{margin-top:0}.section-titre>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--ardoise);color:var(--blanc);font-family:var(--f-titre);font-size:14px;flex:none}.section-titre h3{font-size:22px;margin-bottom:10px}.section-titre p{font-size:14px;max-width:55ch}.dialog-pied{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;position:sticky;bottom:0;z-index:1;background:var(--sable);border-top:1px solid var(--trait);padding:20px 32px}.dialog-pied .erreur{flex:1;min-width:120px;margin:0}.dialog-pied .bouton{font-size:14px;padding:11px 16px}.dialog-bien details{margin-top:28px;border-top:1px solid var(--trait);padding-top:20px}.dialog-bien summary{cursor:pointer;font-size:15px;font-weight:500;margin-bottom:20px}.depot{display:block;border:1px solid var(--trait-fort);border-radius:var(--r-m);background:var(--sable);padding:24px;font-size:15px}.depot input{padding:12px 0;background:transparent;border:0;font-size:14px}.photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:20px;margin-top:28px}.photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-s);background:var(--sable-2)}.photos small{display:block;margin:10px 0;font-size:13px}.photos .bouton{font-size:12px}.fichier-drive{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--trait);font-size:14px;overflow-wrap:anywhere}.fichier-drive .bouton{flex:none;font-size:13px}.fichier-drive input[type=checkbox]{width:auto;margin:0}.fichier-drive label{display:flex;gap:12px;align-items:center;min-width:0}.fichier-drive label span{overflow-wrap:anywhere}.fichier-drive label input{flex:none}.fichier-drive small{font-size:12px}.import-corps{padding:28px 32px}.import-corps>p{margin-bottom:20px}.import-corps label{margin-top:20px}.import-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:20px 0}.source-fichier{max-width:280px;font-size:13px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;max-height:250px;overflow:auto;background:var(--sable);padding:20px}dl{display:grid;grid-template-columns:1fr 2fr;gap:12px;font-size:14px}dt{font-weight:500}dd{margin:0;overflow-wrap:anywhere}#propositions-drive{margin-top:28px;border:1px solid var(--trait);border-radius:var(--r-m);padding:24px}#propositions-drive h4{font-size:22px;margin-bottom:20px}
@media(max-width:1100px){.lateral{gap:20px;padding:16px 24px}.compte>div{display:none}.titre-page{align-items:flex-start;flex-direction:column;gap:28px}.actions{max-width:none;justify-content:flex-start}.tableau th,.tableau td{padding-left:12px;padding-right:12px}.prix{font-size:20px}.bien-cellule{min-width:180px}.lien-bien{font-size:17px}.connexion{gap:48px}}
@media(max-width:760px){.lateral{position:relative;display:grid;grid-template-columns:1fr auto;padding:18px 16px 0;gap:18px 10px}.marque{gap:12px}.logo-officiel{width:102px}.nom-atelier{font-size:12px;padding-left:12px}.lateral nav{grid-row:2;grid-column:1/-1;display:flex;gap:6px;border-top:1px solid var(--trait);padding:8px 0}.nav{padding:10px 9px;font-size:14px;flex:1;justify-content:center}.compte{grid-column:2;grid-row:1;gap:4px}.compte>.avatar{display:none}.entete{padding:20px 16px 0;font-size:11px}.prive{font-size:11px}.page{padding:36px 16px 56px}.titre-page{margin-bottom:28px}.titre-page .surtitre{font-size:11px;margin-bottom:20px}.titre-page h1{font-size:39px}.titre-page>div>p:last-child{font-size:16px;margin-top:20px}.actions{gap:10px}.actions .bouton{font-size:14px;padding:12px 15px}.actions #nouveau-batiment{font-size:13px}.statistiques{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:28px}.stat{padding:22px 18px;gap:11px}.stat>span{font-size:13px}.stat>strong{font-size:34px}.stat small{font-size:11px}.barre-outils{flex-direction:column;align-items:stretch;gap:12px}.barre-outils>input{max-width:none}.filtres select{max-width:none;width:0;flex:1;font-size:13px}.tableau{overflow:visible}.tableau table,.tableau tbody{display:block}.tableau thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.tableau tr{display:grid;grid-template-columns:1fr auto;gap:16px;padding:20px;border-bottom:1px solid var(--trait)}.tableau tr:last-child{border:0}.tableau td{border:0;padding:0}.tableau td:first-child{grid-column:1/-1}.tableau th:nth-child(2),.tableau td:nth-child(2),.tableau th:nth-child(5),.tableau td:nth-child(5){display:none}.tableau td:nth-child(4){text-align:right}.bien-cellule{min-width:0;gap:14px}.vignette{width:64px;height:64px}.lien-bien{font-size:19px;max-width:none}.bien-cellule small{font-size:11px}.sous-ligne{font-size:12px}.prix{font-size:24px}.badge{font-size:12px}.pied-liste{font-size:11px;gap:12px;align-items:flex-start}.pied-liste>span:last-child{max-width:50%;text-align:right}.vide{padding:40px 22px}.vide h2{font-size:27px}.batiment{padding:24px}.batiment h2{font-size:27px}.connexion{grid-template-columns:1fr;gap:36px;padding:32px 16px;min-height:auto}.connexion-marque{padding:0}.connexion-marque>.logo-officiel{width:125px;margin-bottom:40px}.connexion-marque h1{font-size:38px}.connexion-marque>p:not(.surtitre){font-size:16px;margin-top:24px}.connexion-marque>small{display:none}.connexion-form{padding:28px 22px}.connexion-form .surtitre{font-size:10px}.connexion-form h2{font-size:30px}dialog{width:calc(100% - 20px);max-height:calc(100vh - 24px)}.dialog-entete{padding:22px 20px;gap:10px}.dialog-entete h2{font-size:26px}.dialog-entete .surtitre{font-size:10px}.onglets{padding:0 20px;gap:20px}.onglets button{font-size:14px;padding:16px 0}.dialog-bien section,.dialog-court .champs,.import-corps{padding:24px 20px}.champs{grid-template-columns:1fr;gap:20px}.champs .large{grid-column:auto}.section-titre{gap:12px}.section-titre h3{font-size:22px}.section-titre p{font-size:13px}.dialog-pied{padding:16px 20px;gap:10px}.dialog-pied .erreur{flex-basis:100%;min-width:0}.dialog-pied .bouton{font-size:13px;padding:11px 13px;min-height:44px}.photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.photos .bouton{font-size:11px;padding:8px}.fichier-drive{font-size:13px;gap:10px}.fichier-drive .bouton{font-size:12px;padding:10px;min-height:40px}.encadre{padding:16px;font-size:13px}dl{font-size:13px}.journal{padding:4px 20px}.evenement{font-size:13px}.import-actions{align-items:stretch;flex-direction:column}.source-fichier{max-width:none}.dialog-court .erreur{margin:0 20px 20px}}
