/* Client summary: presentation only; shared application handlers remain in index.html. */
:root{--fond:#fbf8f3;--indigo:#080d3e;--doux:#515b89;--trait:#ececf1;--att:#9c4700;--att-fond:#fff4df}
.enveloppe{max-width:1550px}
header{padding:0 3.7%}
.entete{display:grid;grid-template-columns:auto minmax(240px,1fr) auto auto;align-items:center;gap:22px;min-height:74px}
.marque{display:contents}.marque h1{font-size:30px;white-space:nowrap;grid-column:1}.marque>div{grid-column:4;grid-row:1}
.chantier{display:flex;align-items:center;gap:16px;margin:0;padding-left:22px;border-left:1px solid #303458;grid-column:2;grid-row:1;color:white;font-size:13px}.chantier svg{flex:none}.chantier b{font-size:16px}.chantier span{display:block}
nav{grid-column:3;grid-row:1;gap:2px}nav button{padding:24px 9px 18px;font-size:13px;color:white}header .cta{white-space:nowrap;padding:12px 18px}
main{padding:14px 0 40px;margin-inline:auto;width:92.6%}
#verdict{border-width:1px;grid-template-columns:auto 1fr auto;padding:12px 24px;min-height:80px;margin-bottom:14px;color:var(--indigo)}
#verdict.att{background:#fff5e3;border-color:#ffba54}#verdict strong{font-family:'Bricolage Grotesque',sans-serif;font-size:24px}#verdict .ico{color:#b75a00;font-size:36px;font-weight:700;padding:0 10px}#verdict.ko .ico{color:var(--ko)}
.date-dossier{display:flex;align-items:center;gap:14px;border-left:1px solid #f2d6ad;padding-left:26px;margin-left:22px;font-size:14px;min-width:228px}
#indicateurs{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;position:relative;margin-bottom:14px}
#indicateurs:before{content:'';position:absolute;left:5%;right:5%;top:33px;height:1px;background:#d19c4c}
#indicateurs .indic{position:relative;display:flex;align-items:flex-start;gap:14px;border:1px solid #f0f0f2;border-radius:13px;box-shadow:0 3px 20px #17133005;padding:12px 15px;min-width:0;min-height:100px}
.numero{flex:none;display:grid;place-items:center;width:40px;height:40px;background:#008249;color:white;border-radius:50%;font-size:19px;font-weight:700}.att .numero{background:#b96800}.ko .numero{background:var(--ko)}
.etape-icone{display:grid;place-items:center;flex:none;width:46px;height:46px;border:1px solid var(--trait);background:#f8f9fb;border-radius:50%;color:var(--indigo)}
.etape-corps{min-width:0;flex:1}#indicateurs .nom{text-transform:none;letter-spacing:0;font-size:17px;color:var(--indigo)}#indicateurs .val{color:var(--ok)}#indicateurs .att .val{color:var(--att)}#indicateurs .ko .val{color:var(--ko)}
#indicateurs details{font-size:12px;color:var(--doux);margin-top:3px}#indicateurs summary{cursor:pointer;list-style:none}#indicateurs details[open]{padding-bottom:8px}#indicateurs details[open] summary{margin-bottom:8px}
.etat-signe{display:grid;place-items:center;flex:none;background:var(--ok);color:white;width:24px;height:24px;border-radius:50%;font-weight:bold}.att .etat-signe{background:#b96800}.ko .etat-signe{background:var(--ko)}
#alertes{gap:22px;margin-bottom:16px}#alertes .puce{border-radius:11px;padding:11px 18px;font-size:14px;gap:18px;min-height:48px}#alertes .fl{margin-left:24px}
.synthese-grille{grid-template-columns:1.1fr .98fr 1.06fr;gap:16px}.synthese-grille>.carte{padding:20px 25px;border-radius:15px;border:1px solid #f0f0f2;box-shadow:0 4px 22px #17133004;min-width:0}
#synthese h2{display:flex;align-items:center;gap:18px;font-size:27px;line-height:1.2;margin-bottom:18px}#synthese h2 svg{width:30px;height:30px}#synthese h2>span{display:flex;flex:none}
#synthese .ligne{padding:10px 0;gap:14px;grid-template-columns:42% 1fr;color:var(--indigo)}#synthese .ref{padding:4px 9px;font-family:inherit;display:inline-block;line-height:1.2}.finances{margin:18px -10px 2px;padding:8px 10px;background:#f6f7f9;border-radius:12px}.finances .ligne.total{border:0;margin:0;padding:0!important;grid-template-columns:1fr auto!important}.finances .montant{font-size:27px;font-weight:700}.finances .sous{padding:0!important;grid-template-columns:1fr auto!important}.finances .sous .montant{font-size:15px;font-weight:400}.travaux>.ligne:has(.montant){font-size:14px;grid-template-columns:1fr auto!important}
.avancement .ligne{position:relative;margin-left:25px;padding:14px 0 18px 42px!important;display:flex!important;flex-direction:column;gap:0!important;min-height:80px;border-bottom:1px dashed var(--trait)}.avancement .ligne:before{content:'';position:absolute;left:0;top:21px;bottom:-21px;width:1px;background:#e5bf84}.avancement .ligne:last-child:before{display:none}.avancement .ligne:after{content:'';position:absolute;left:-10px;top:19px;width:18px;height:18px;border:3px solid #7b80a0;border-radius:50%;background:white}.avancement .ligne:nth-of-type(1):after{content:'✓';display:grid;place-items:center;color:white;background:#008249;border-color:#008249;font-size:15px}.avancement .ligne:nth-of-type(2):after,.avancement .ligne:nth-of-type(3):after{border-color:#d87900;background:#fff2da}.avancement .ligne>span:first-child{font-size:17px;font-weight:700;color:var(--indigo)}.avancement .ligne>span:last-child{color:var(--doux)}.avancement .puce{font-size:13px}.avancement .ligne:last-child{border-bottom:0}
.preuve-ligne{width:100%;display:grid;grid-template-columns:58px minmax(110px,1fr) minmax(0,1.2fr) 10px;gap:14px;align-items:center;text-align:left;background:none;border:0;border-top:1px dashed var(--trait);padding:11px 0;min-height:79px;font:14px/1.5 Archivo,sans-serif;color:var(--indigo);cursor:pointer}.preuve-icone{display:grid;place-items:center;border-radius:50%;border:1px solid var(--trait);background:#f8f9fb;width:56px;height:56px}.preuve-icone svg{width:30px;height:30px}.preuve-detail{color:var(--doux)}.preuve-detail .ref{margin-left:8px}.preuve-ligne:hover{background:#fff8ef}.preuve-ligne .anomalie{font-size:13px}.preuve-ligne .fl{display:none}
.suite{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:48px}.suite h2{grid-column:1/-1;margin-bottom:4px!important}.suite .preuve-ligne{grid-template-columns:48px 1fr 1.6fr 10px;border:0;padding:0;min-height:52px}.suite .preuve-icone{background:none;border:0;width:44px;height:44px}.suite .ligne,.suite .note{grid-column:1/-1}.suite #hors-perimetre-synthese{grid-column:1/-1;margin-top:6px}.suite .note{margin:4px 0 0}
:where(button,summary,a,input,select):focus-visible{outline:3px solid #b54a00;outline-offset:3px}header :focus-visible{outline-color:#ffad66}
@media(max-width:1500px){.entete{grid-template-columns:auto 1fr auto;gap:14px}.marque>div{grid-column:3}.entete nav{grid-row:2;grid-column:1/-1;justify-content:center}nav button{padding:9px 14px}.entete{padding-top:12px}.synthese-grille>.carte{padding:20px}#synthese h2{font-size:23px}.preuve-ligne{grid-template-columns:44px 1fr 1fr 10px;gap:8px}.preuve-icone{width:42px;height:42px}.etape-icone{display:none}}
@media(max-width:1100px){.synthese-grille{grid-template-columns:1fr 1fr}.preuves{grid-column:1/-1}#indicateurs{grid-template-columns:1fr 1fr}#indicateurs:before{display:none}#verdict{grid-template-columns:auto 1fr}.date-dossier{grid-column:2;border:0;padding:0;margin:0}.preuve-ligne{grid-template-columns:50px 1fr 1fr 10px}}
@media(max-width:700px){header{padding-inline:16px}.entete{grid-template-columns:1fr}.marque h1,.marque>div,.chantier,.entete nav{grid-column:1;grid-row:auto}.marque h1{font-size:28px}.chantier{border:0;padding:0}.entete nav{justify-content:flex-start;max-width:100%}header .cta{width:100%}.marque>div{display:block!important}.synthese-grille{grid-template-columns:minmax(0,1fr)}.preuves,.suite{grid-column:auto}.suite{display:block}.suite .preuve-ligne{grid-template-columns:40px 1fr 1fr 10px}.suite .ligne{grid-template-columns:1fr!important}.finances .montant{font-size:23px}#verdict{padding:14px;gap:8px}#verdict strong{font-size:20px}#verdict .ico{padding:0}#indicateurs{gap:10px}#indicateurs .indic{padding:12px;gap:8px}.numero{width:28px;height:28px;font-size:15px}.etat-signe{display:none}#indicateurs .nom{font-size:15px}#indicateurs .val{font-size:14px}#alertes{gap:8px}#alertes .puce{width:100%;text-align:left;gap:12px}#alertes .fl{margin-left:auto}#alertes svg{flex:none}.synthese-grille>.carte{padding:20px 16px}.preuve-ligne{grid-template-columns:40px 1fr 1fr 8px;font-size:13px}.preuve-detail .ref{margin-left:0}.avancement .ligne{margin-left:12px}.suite .preuve-ligne{margin-block:12px}.date-dossier{min-width:0}main{padding-top:12px}}
@media(min-width:1501px){#synthese .preuves h2{font-size:25px;gap:16px;letter-spacing:-.04em}.avancement .ligne:nth-of-type(3){flex-direction:row!important;align-items:center;gap:12px!important}.avancement .ligne:nth-of-type(3)>span:first-child{white-space:nowrap}.avancement .ligne:nth-of-type(3) .puce{padding:7px 16px}.avancement .ligne:last-child .puce{display:table;margin-top:4px}}
header .cta{display:flex;align-items:center;justify-content:center;gap:12px}#verdict .ico svg{width:38px;height:38px}
