/* Espace bailleur v3 — complète site.css.
   Échelle unique : texte 15 px, petit 13 px, titre de page 26 px, titre de bloc 18 px, intertitre 12,5 px capitales,
   chiffres clés 24 px. Boutons 44 px (petits 36 px), champs 46 px. Espacements : 8 / 12 / 16 / 24. */
.esp-body{background:var(--bg)}
.esp-wrap{padding-top:24px;padding-bottom:96px;display:flex;flex-direction:column;gap:16px}
.app{font-size:15px;line-height:1.55}
.esp-h1{font-size:clamp(22px,2.6vw,26px);line-height:1.2;font-weight:800;color:var(--navy);margin:0;letter-spacing:-.01em}
.esp-h2{font-size:18px;line-height:1.3;font-weight:800;color:var(--navy);margin:0}
.esp-h3{font-size:12.5px;line-height:1.3;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:8px 0 0}
.esp-sous{margin:4px 0 0;color:var(--muted);font-size:15px}
.app p{margin:0}
.app .muted{font-size:inherit}
.app .help{font-size:13.5px}
.app .notice{font-size:14.5px;padding:12px 16px}
.app .panel{padding:22px 24px}
.app .tag{font-size:12.5px;padding:3px 10px}

/* Boutons et champs harmonisés dans l'espace */
.app .btn{min-height:44px;font-size:15px;padding:0 18px;border-radius:8px}
.app .btn-sm{min-height:36px;font-size:14px;padding:0 12px}
.app .btn-ghost{border-width:1.5px}
.app .btn-icone{min-width:36px;padding:0 8px}
.app .input{min-height:46px;font-size:16px;border-width:1.5px;border-radius:8px}
.app .input-sm{min-height:38px;font-size:14px;padding:0 10px;width:auto;max-width:100%}
.app select.input{padding-right:32px}
.app .field label,.label-like{font-size:14px;font-weight:700;color:var(--ink)}
.app .field .valeur{font-size:15px;min-height:46px;display:flex;align-items:center;overflow-wrap:anywhere}
.btn-danger{border-color:var(--err)!important;color:var(--err)!important}
.btn:disabled{opacity:.55;cursor:default}
.lien-fleche{font-weight:700;font-size:14.5px;text-decoration:none;align-self:flex-start}
.lien-fleche::after{content:" →"}
.lien-fleche:hover{text-decoration:underline}
.pos{color:var(--go-2)}.neg{color:var(--err)}

/* En-têtes */
.esp-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.esp-tete{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px}
.esp-tete-page{align-items:flex-end;margin-bottom:2px}
.esp-tete a:not(.btn){font-weight:700}
.esp-fil{font-size:13.5px;color:var(--muted);display:flex;gap:8px;align-items:center;margin-bottom:-4px}
.esp-fil a{font-weight:700;text-decoration:none}
.esp-sep{margin-top:8px}

/* Connexion */
.esp-attente{display:flex;flex-direction:column;gap:16px;border:2px solid var(--go)}
.esp-resume{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;background:var(--bg);border-radius:10px;padding:16px}
.esp-resume span{display:block;font-size:13px}
.esp-connexion{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;align-items:start}
.esp-connexion form{display:flex;flex-direction:column;gap:16px}
.esp-promo{padding:8px 4px;display:flex;flex-direction:column;gap:14px}
.esp-promo h2{font-size:22px;font-weight:800;color:var(--navy);margin:0}

/* Navigation */
.esp{display:flex;flex-wrap:nowrap;gap:28px;align-items:flex-start}
.esp-nav{flex:0 0 216px;display:flex;flex-direction:column;gap:1px;position:sticky;top:16px}
.esp-nav a{min-height:34px;display:flex;align-items:center;padding:0 14px;border-radius:8px;font-weight:600;font-size:15px;color:var(--ink);text-decoration:none}
.esp-nav a:hover{background:#fff;color:var(--navy)}
.esp-nav a[aria-current="page"]{font-weight:800;color:var(--navy);background:#fff;box-shadow:inset 3px 0 0 var(--navy),0 1px 3px rgba(0,32,91,.08)}
.esp-nav-sep{display:flex;align-items:center;gap:8px;margin:10px 0 2px;padding:12px 14px 4px;border-top:1px solid #D5DBE5;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--navy)}
.esp-nav-sep::before{content:"";width:6px;height:6px;border-radius:2px;background:var(--go);flex:none}
.esp-qui{padding:0 14px 12px;font-size:13.5px;word-break:break-all;display:flex;flex-direction:column;gap:2px;margin:0}
.esp-qui strong{font-size:14px}
.esp-qui .tag{margin-top:6px}
.esp-new{margin-top:14px;padding:0 4px}
.esp-new .btn{width:100%}
.esp-nav a.btn,.esp-nav a.btn:hover{color:#fff;background:var(--go);justify-content:center;font-weight:700}
.esp-main{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:16px}
#vue{display:flex;flex-direction:column;gap:16px}
#vue h1:focus{outline:none}

/* Bandeau d'essai */
.be-fermer{position:absolute;top:8px;right:10px;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:22px;line-height:1;cursor:pointer}
.be-fermer:hover,.be-fermer:focus-visible{background:rgba(255,255,255,.25)}
/* Bandeau « gratuit à vie » (version claire) */
.bg-v2{position:relative;display:flex;align-items:center;gap:18px;margin-bottom:16px;padding:14px 48px 14px 18px;border:1px solid #C3E6D3;border-radius:14px;background:#E8F6EE;font-size:14.5px;line-height:1.45}
.bg-ico{flex:none;width:36px;height:36px;border-radius:50%;background:var(--go);display:grid;place-items:center}
.bg-ico::after{content:"";width:8px;height:14px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translate(-1px,-1px)}
.bg-t{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.bg-t strong{font-size:15.5px;color:var(--navy)}.bg-t span{font-size:14px;color:var(--muted)}
.bg-prix{flex:none;text-align:right;font-size:13px;color:var(--muted);line-height:1.25}.bg-prix strong{display:block;font-size:17px;color:var(--navy)}
.bg-btn{flex:none;white-space:nowrap}
.bg-x{position:absolute;top:50%;right:10px;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:50%;background:none;color:#8A97AB;font-size:20px;line-height:1;cursor:pointer}
.bg-x:hover,.bg-x:focus-visible{background:rgba(0,32,91,.06);color:var(--navy)}
@media (max-width:760px){.bg-v2{flex-wrap:wrap;align-items:flex-start;padding:14px 40px 14px 14px;gap:12px}.bg-t{flex-basis:calc(100% - 48px)}.bg-prix{text-align:left;margin-left:48px}.bg-btn{margin-left:auto;align-self:center}.bg-x{top:8px;transform:none}}
.bandeau-fin{background:#FFF6F5;color:var(--ink);border:1px solid #F0B8B3}
.bandeau-fin strong{color:var(--err)}

/* Indicateurs */
.esp-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.esp-kpis-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.kpi{padding:16px 18px;display:flex;flex-direction:column;gap:2px;min-width:0}
.kpi span{font-size:13.5px;color:var(--muted);font-weight:600}
.kpi b{font-size:24px;color:var(--navy);line-height:1.2;font-variant-numeric:tabular-nums}
.kpi .kpi-date{font-size:18px;line-height:1.35}
.kpi small{font-size:13px;color:var(--muted)}
.kpi-alerte{border-color:#F0B8B3;background:#FFF6F5}
.kpi-alerte b{color:var(--err)}
.kpi-resultat{border-color:var(--go);background:#F2FBF6}
.kpi-resultat b{color:var(--go-2)}
.jauge{display:block;height:6px;border-radius:3px;background:var(--line-2);margin-top:8px;overflow:hidden}
.jauge i{display:block;height:100%;background:var(--go);border-radius:3px}

/* Grilles de blocs */
.esp-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.esp-grille-2-1{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}
.esp-main .card.panel{display:flex;flex-direction:column;gap:12px}
.esp-pile{display:flex;flex-direction:column;gap:10px}

/* Lignes de liste (retards, échéances, documents, e-mails) */
.ligne{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;padding:11px 0;border-top:1px solid var(--line-2);flex-wrap:wrap;text-decoration:none;color:var(--ink)}
.ligne:first-of-type,.esp-h2+.ligne,.esp-tete+.ligne,.muted+.ligne{border-top:0}
.ligne>div:first-child{display:flex;flex-direction:column;min-width:0;flex:1 1 220px}
.ligne>div:first-child strong{font-size:15px;font-weight:700;color:var(--ink);overflow-wrap:anywhere}
.ligne>div:first-child span{font-size:13.5px;color:var(--muted)}
.ligne-act{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;font-variant-numeric:tabular-nums}
.ligne-act b{color:var(--navy)}
.ligne-lien:hover strong{color:var(--navy);text-decoration:underline}
.esp-avis{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:space-between;padding:16px 22px!important;flex-direction:row!important}

/* Statuts */
.pst{display:inline-flex;align-items:center;font-size:12.5px;font-weight:800;padding:3px 10px;border-radius:999px;white-space:nowrap;line-height:1.4}
.pst-paye{background:var(--go-50);color:var(--go-2)}
.pst-partiel{background:#FFF1CC;color:var(--warn)}
.pst-impaye{background:#FDE3E1;color:var(--err)}
.pst-avenir{background:var(--navy-50);color:var(--navy)}
.pst-hors{background:var(--line-2);color:var(--muted)}

/* Tableaux */
.esp-table{font-size:14.5px;width:100%;border-collapse:collapse}
.esp-table th{font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800;text-align:left;background:transparent;border-bottom:1px solid var(--line)}
.esp-table td,.esp-table th{padding:10px 12px;vertical-align:middle}
.esp-table td{border-bottom:1px solid var(--line-2);white-space:nowrap}
.esp-table tr:last-child td{border-bottom:0}
.esp-table td:nth-child(1),.esp-table td:nth-child(2),.esp-table td:nth-child(3){white-space:normal}
.esp-table .num{text-align:right;font-variant-numeric:tabular-nums}
.esp-table td.act{text-align:right}
.esp-table td.act .btn{margin:2px 0 2px 4px}
.esp-table a{font-weight:700;text-decoration:none}
.esp-table a:hover{text-decoration:underline}
.esp-mois-nav{display:flex;align-items:center;gap:8px}
.esp-mois-nav strong{min-width:64px;text-align:center;color:var(--navy);font-size:18px}

/* Grille 12 mois */
.grille-wrap{padding:6px 0 0;overflow:hidden}
.grille-defile{overflow-x:auto;-webkit-overflow-scrolling:touch}
.grille{border-collapse:separate;border-spacing:0;width:100%;table-layout:fixed;font-size:13px;font-variant-numeric:tabular-nums}
.grille col.col-loc{width:190px}
.grille th,.grille td{padding:5px 2px;text-align:center;border-bottom:1px solid var(--line-2)}
.grille thead th{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:10px 4px}
.grille thead th.maintenant{color:var(--navy)}
.grille thead th.maintenant::after{content:"";display:block;width:6px;height:6px;border-radius:50%;background:var(--navy);margin:4px auto 0}
.grille th[scope="row"],.grille thead th:first-child{position:sticky;left:0;z-index:1;background:#fff;text-align:left;padding:8px 10px 8px 16px;border-right:1px solid var(--line-2)}
.grille th[scope="row"] a{display:block;font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.grille th[scope="row"] span{display:block;font-weight:400;font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cel-b{width:100%;min-height:38px;border:0;border-radius:7px;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;padding:0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cel-paye{background:var(--go-50);color:var(--go-2)}
.cel-partiel{background:#FFF1CC;color:var(--warn)}
.cel-impaye{background:#FDE3E1;color:var(--err)}
.cel-avenir{background:#fff;color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}
.cel-b:hover{filter:brightness(.95);box-shadow:inset 0 0 0 2px currentColor}
.cel-hors{color:var(--line)}
.grille tr.tot th,.grille tr.tot td{background:var(--bg);border-bottom:0;font-weight:700}
.grille tr.tot td span{display:block;color:var(--navy)}
.grille tr.tot td small{display:block;color:var(--muted);font-weight:500;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.grille tr.tot td span{font-size:12.5px;white-space:nowrap}
.grille-defile{scrollbar-width:thin}
.grille-legende{display:flex;gap:8px;flex-wrap:wrap;padding:12px 18px 16px;margin:0}
.d-cel-etat{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* Cartes */
.esp-cartes{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.esp-carte{padding:20px;display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--ink);transition:border-color .15s,box-shadow .15s}
.esp-carte:hover{border-color:var(--navy);color:var(--ink);box-shadow:0 6px 18px rgba(0,32,91,.08)}
.esp-carte-tete{display:flex;justify-content:space-between;gap:8px;align-items:center}
.esp-infos{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px 20px}
.esp-infos-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.inf{display:flex;flex-direction:column;min-width:0}
.inf span{font-size:12.5px;color:var(--muted);font-weight:600}
.inf strong{font-size:15px;font-weight:700;overflow-wrap:anywhere}
.esp-vide{display:flex;flex-direction:column;gap:12px;align-items:flex-start}

/* Page location */
.loc-tete{padding:22px 24px 0;display:flex;flex-direction:column;gap:18px}
.loc-tete-haut{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px 24px}
.loc-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.loc-chiffres{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;border-top:1px solid var(--line-2);margin:0 -24px;padding:14px 24px 18px;background:#FAFBFD;border-radius:0 0 var(--r) var(--r)}
.loc-chiffres .inf{display:flex;flex-direction:column;justify-content:space-between;gap:2px} /* valeurs alignées même si un libellé passe sur 2 lignes */
.onglets{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--line);-webkit-overflow-scrolling:touch;margin-top:-4px}
.onglets a{padding:12px 14px;font-weight:700;font-size:14.5px;color:var(--muted);text-decoration:none;white-space:nowrap;border-bottom:3px solid transparent;margin-bottom:-1px}
.onglets a:hover{color:var(--navy)}
.onglets a[aria-current="page"]{color:var(--navy);border-bottom-color:var(--navy)}

/* Documents */
.perso{border:1.5px solid var(--go);background:linear-gradient(180deg,#F2FBF6,#fff 140px)}
.perso-texte{display:flex;flex-direction:column;gap:8px;max-width:760px}
.perso-grand{padding:24px;display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr);gap:20px 28px;align-items:start}
.perso-choix{display:flex;flex-direction:column;gap:8px}
.esp-docs{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px 18px}
.esp-docs-3{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.esp-docs>div{display:flex;flex-direction:column;gap:6px}
.esp-docs h3{font-size:12.5px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin:0 0 2px}
.btn-doc{display:flex;flex-direction:column;gap:1px;width:100%;text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;font-size:14.5px;font-weight:700;color:var(--navy);cursor:pointer;text-decoration:none;line-height:1.35}
.btn-doc span{font-weight:400;font-size:13px;color:var(--muted)}
.btn-doc:hover{border-color:var(--navy);background:var(--navy-50);color:var(--navy)}
.filtres{display:flex;gap:8px;flex-wrap:wrap}
.filtres-page{margin-top:-4px}
.pagination{display:flex;gap:12px;align-items:center;justify-content:center;padding-top:8px;font-size:14px;color:var(--muted)}
.repli{padding:0!important;gap:0!important}
.repli summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;padding:18px 24px}
.repli summary::-webkit-details-marker{display:none}
.repli summary::after{content:"";width:10px;height:10px;border-right:2px solid var(--navy);border-bottom:2px solid var(--navy);transform:rotate(45deg);margin-left:auto;flex:none}
.repli[open] summary::after{transform:rotate(-135deg)}
.repli summary .muted{font-size:14px}
.repli-corps{padding:0 24px 20px}

/* Bascules e-mails */
.bascules{display:flex;flex-direction:column}
.bascule{display:flex;gap:14px;align-items:center;padding:11px 0;border-top:1px solid var(--line-2);cursor:pointer}
.bascule:first-child{border-top:0}
.bascule input{position:absolute;opacity:0;width:1px;height:1px}
.bascule-i{flex:none;width:40px;height:24px;border-radius:12px;background:#B8C1CF;position:relative;transition:background .15s}
.bascule-i::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .15s}
.bascule input:checked+.bascule-i{background:var(--go)}
.bascule input:checked+.bascule-i::after{transform:translateX(16px)}
.bascule input:focus-visible+.bascule-i{outline:3px solid #6C9BE8;outline-offset:2px}
.bascule-t{display:flex;flex-direction:column;min-width:0}
.bascule-t strong{font-size:14.5px}
.bascule-t small{font-size:13px;color:var(--muted)}

/* Formulaires */
.esp-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px 18px;align-items:end}
.esp-form .field:has(textarea){grid-column:1/-1}
.esp-form .field label{line-height:1.35}
.esp-main .card.panel.esp-form{display:grid}
.esp-form .esp-actions,.esp-form .esp-plein,.esp-form>.esp-h2,.esp-form>.error{grid-column:1/-1}
.esp-form>.esp-h2{margin-top:6px;padding-top:14px;border-top:1px solid var(--line-2)}
.esp-form>.esp-h2:first-child{margin-top:0;padding-top:0;border-top:0}
.esp-form textarea.input{min-height:84px;padding:10px 14px}
.esp-sous-form{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px 18px;padding:14px;background:var(--bg);border-radius:10px}
.esp-sous-form[hidden]{display:none}
.esp-zone{background:transparent!important;border-style:dashed}
.esp-optin{display:flex;gap:12px;align-items:flex-start;font-size:14.5px}
.esp-optin input{width:20px;height:20px;margin-top:2px;accent-color:var(--navy);flex:none}

/* Formules */
.tarifs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tarif{border:1px solid var(--line);border-radius:10px;padding:18px;display:flex;flex-direction:column;gap:6px;position:relative}
.tarif .btn{margin-top:8px}
.tarif b{font-size:28px;color:var(--navy);line-height:1.15}
.tarif b small{font-size:15px;color:var(--muted);font-weight:600}
.tarif-nom{font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.tarif-reco{border:2px solid var(--go);background:#F7FCF9}
.tarif-reco .tag{position:absolute;top:-12px;right:14px}

/* Fenêtres */
.esp-dialog{border:0;border-radius:14px;padding:24px;width:min(720px,calc(100vw - 24px));max-height:calc(100vh - 32px);box-shadow:0 20px 60px rgba(0,32,91,.25);font-size:15px}
.esp-dialog-sm{width:min(480px,calc(100vw - 24px))}
.esp-dialog::backdrop{background:rgba(0,20,60,.45)}
.esp-dialog form{display:flex;flex-direction:column;gap:14px}
.esp-dialog .btn{min-height:44px;font-size:15px;padding:0 18px}
.esp-dialog .btn-sm{min-height:38px;font-size:14px;padding:0 14px}
.esp-dialog .input{min-height:46px;font-size:16px;border-width:1.5px;border-radius:8px}
.esp-actions-fin{justify-content:flex-end;border-top:1px solid var(--line-2);padding-top:12px}

/* Assistant */
.assistant-bouton{position:fixed;right:20px;bottom:20px;z-index:40;display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 18px 0 8px;border:0;border-radius:999px;background:var(--navy);color:#fff;font:inherit;font-weight:700;font-size:15px;cursor:pointer;box-shadow:0 8px 24px rgba(0,32,91,.3)}
.assistant-bouton span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#fff;color:var(--navy);font-weight:800}
.assistant-bouton[aria-expanded="true"]{display:none}
.assistant{position:fixed;right:20px;bottom:20px;z-index:41;width:min(400px,calc(100vw - 24px));max-height:min(640px,calc(100vh - 40px));display:flex;flex-direction:column;gap:10px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 60px rgba(0,32,91,.25);font-size:14.5px}
.assistant[hidden]{display:none}
.assistant-tete{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.assistant-tete strong{display:block;color:var(--navy);font-size:16px}
.assistant-tete span{font-size:12.5px;color:var(--muted)}
.assistant .input{min-height:44px;font-size:16px;border-width:1.5px;border-radius:8px}
.assistant-sous{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:2px 0 0}
.assistant-liste{overflow-y:auto;display:flex;flex-direction:column;gap:6px;min-height:80px}
.ast{border:1px solid var(--line-2);border-radius:8px}
.ast summary{cursor:pointer;padding:10px 12px;font-weight:700;color:var(--navy);list-style:none}
.ast summary::-webkit-details-marker{display:none}
.ast[open] summary{border-bottom:1px solid var(--line-2)}
.ast p{padding:10px 12px 4px;margin:0;line-height:1.55}
.ast a{display:inline-block;padding:0 12px 10px;font-size:13px;font-weight:700}
.assistant-note{font-size:12px;color:var(--muted);margin:0}

/* Responsive */
@media (max-width:1100px){
  .esp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .loc-chiffres{grid-template-columns:repeat(3,minmax(0,1fr))}
  .perso-grand{grid-template-columns:1fr}
}
@media (max-width:860px){
  .esp{flex-direction:column;gap:12px;align-items:stretch}
  .esp-nav,.esp-main{max-width:100%}
  .esp-nav{position:static;flex:none;width:100%;flex-direction:row;overflow-x:auto;gap:6px;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .esp-nav a{white-space:nowrap;min-height:40px;background:#fff;border:1px solid var(--line);font-size:14px;padding:0 12px}
  .esp-nav a[aria-current="page"]{box-shadow:inset 0 -3px 0 var(--navy)}
  .esp-qui,.esp-nav-sep{display:none}
  .esp-new{margin:0;padding:0;flex:none}
  .esp-new .btn{width:auto;white-space:nowrap}
  .esp-body .header .nav{display:none}
  .esp-grille,.esp-grille-2-1{grid-template-columns:minmax(0,1fr)}
  .esp-kpis,.esp-kpis-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .esp-kpis-3>.kpi:last-child{grid-column:1/-1}
  .kpi{padding:14px}
  .kpi b{font-size:20px}
  .kpi .kpi-date{font-size:16px}
  .app .panel{padding:18px}
  .loc-tete{padding:18px 18px 0}
  .loc-chiffres{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 -18px;padding:14px 18px 16px}
  .esp-table thead{display:none}
  .esp-table tr{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:12px 0;border-bottom:1px solid var(--line-2)}
  .esp-table td{border:0;padding:2px 0;white-space:normal}
  .esp-table td.act{grid-column:1/-1;text-align:left;padding-top:6px}
  .esp-table td.act .btn{margin:2px 4px 2px 0}
  .esp-table td.num{text-align:left}
  .tarifs{grid-template-columns:1fr}
  .repli summary{padding:16px 18px}.repli-corps{padding:0 18px 16px}
  .grille{min-width:760px}.grille col.col-loc{width:140px}
  .grille th[scope="row"],.grille thead th:first-child{padding-left:12px}
  .assistant-bouton{right:12px;bottom:12px;padding:0 8px;min-height:48px}
  .assistant-bouton{font-size:0}.assistant-bouton span{font-size:16px}
  .assistant{right:8px;left:8px;bottom:8px;width:auto;max-height:calc(100vh - 16px)}
}
@media (max-width:420px){
  .esp-infos-2{grid-template-columns:minmax(0,1fr)}
  .esp-tete-page .esp-actions{width:100%}
}
@media print{.esp-nav,.header,.topbar,.footer,.assistant,.assistant-bouton,.bandeau-essai{display:none!important}}

/* Signature */
.sig-grille{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr);gap:20px;align-items:start}
.sigpad{position:relative;height:200px;border:1.5px dashed #8A96A8;border-radius:10px;background:#fff;touch-action:none}
.sigpad-c{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;touch-action:none;border-radius:10px}
.sigpad-ligne{position:absolute;left:24px;right:24px;bottom:46px;border-bottom:1px solid #C9D1DE;pointer-events:none}
.sigpad-aide{position:absolute;left:28px;bottom:52px;font-size:13px;color:#8A96A8;pointer-events:none}
.sigpad-aide[hidden]{display:none}
.sigpad-outils{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}
.sigpad-import{cursor:pointer}
.sigpad-ep{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);margin-left:auto}
.sigpad-ep input{accent-color:var(--navy);width:110px}
.sig-cote{display:flex;flex-direction:column;gap:12px}
.sig-cote .bascule{border-top:0;padding-top:0}
.sig-apercu{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--line-2);border-radius:8px;background:#FAFBFD}
.sig-apercu span{font-size:12.5px;color:var(--muted);font-weight:600}
.sig-apercu img{max-height:70px;max-width:100%;object-fit:contain;object-position:left}
.bascule input:disabled+.bascule-i{opacity:.45}
@media (max-width:860px){.sig-grille{grid-template-columns:minmax(0,1fr)}.sigpad{height:170px}.sigpad-ep{margin-left:0}}

/* Formules (3 niveaux) */
.tarifs-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:6px}
.tarif-liste{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:14px;color:var(--ink-2)}
.tarif-liste li{position:relative;padding-left:26px;list-style:none}
.tarif-liste li::before{content:"";position:absolute;left:0;top:.25em;width:18px;height:18px;border-radius:50%;background:var(--go) var(--coche) center/11px no-repeat}
.tarif .pst{align-self:flex-start;margin-top:8px}
.periode{display:inline-flex;gap:4px;padding:4px;background:var(--bg);border:1px solid var(--line);border-radius:999px}
.periode button{border:0;background:none;font:inherit;font-size:14px;font-weight:700;color:var(--muted);padding:8px 14px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.periode button[aria-pressed="true"]{background:#fff;color:var(--navy);box-shadow:0 1px 3px rgba(0,32,91,.15)}
.periode-promo{font-size:11.5px;font-weight:800;color:#fff;background:var(--go);padding:2px 7px;border-radius:999px}
.abo-actif{border:2px solid var(--go)}
@media (max-width:1000px){.tarifs-3{grid-template-columns:minmax(0,1fr)}}

/* ── Abonnement : cartes alignées, garanties ── */
.tarifs-3{align-items:stretch}
.tarif{height:100%}
.tarif-bas{margin-top:auto;padding-top:10px;display:flex;flex-direction:column}
.tarif-bas .btn{margin-top:0;width:100%}
.tarif-bas .pst{align-self:flex-start}
.abo-compte{font-size:14.5px;color:var(--ink-2);margin:2px 0 6px}
.garanties{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.garanties li{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:10px;background:var(--bg);font-size:13px;line-height:1.35;color:var(--muted)}
.garanties li>span:last-child{display:flex;flex-direction:column}
.garanties strong{color:var(--navy);font-size:14px}
.g-ico{flex:none;width:30px;height:30px;border-radius:50%;background:var(--go-50) center/16px no-repeat}
.g-rembourse{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23065F46' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 3-6.7L3 8'/%3E%3Cpath d='M3 3v5h5'/%3E%3C/svg%3E")}
.g-n1{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23065F46' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='6'/%3E%3Cpath d='M8.2 13 7 22l5-3 5 3-1.2-9'/%3E%3C/svg%3E")}
.g-conforme{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23065F46' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z'/%3E%3Cpath d='m9 15 2 2 4-4'/%3E%3C/svg%3E")}
.g-rgpd{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23065F46' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E")}
@media (max-width:1100px){.garanties{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.garanties{grid-template-columns:minmax(0,1fr)}}

/* ── Réservé aux abonnés : cadenas, fenêtre, aperçu flouté ── */
:root{--cadenas:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E")}
.verrou{position:relative}
.verrou::after{content:"";position:absolute;top:-7px;right:-7px;width:18px;height:18px;border-radius:50%;background:#B7791F var(--cadenas) center/10px no-repeat;box-shadow:0 0 0 2px #fff;pointer-events:none}
.cel-b.verrou::after{top:-5px;right:-5px;width:14px;height:14px;background-size:8px}
.tag-verrou{background:#FFF1CC;color:#7A5200}
.pw-cadenas{display:inline-flex;flex:none;width:38px;height:38px;border-radius:50%;background:#B7791F var(--cadenas) center/18px no-repeat}
.paywall{width:min(860px,calc(100vw - 24px));padding:0}
.paywall::backdrop{background:rgba(0,20,60,.5)}
.pw-corps{display:flex;flex-direction:column;gap:12px;padding:26px}
.pw-corps .pw-cadenas{width:46px;height:46px;background-size:22px}
.pw-etiquette{align-self:flex-start;font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#7A5200;background:#FFF1CC;padding:3px 10px;border-radius:999px}
.pw-corps>.esp-h2{font-size:22px}
.pw-offres{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line-2);padding-top:12px}
.pw-offres .esp-h2{font-size:17px}
.pw-offres .tarif{padding:14px}
.pw-offres .tarif b{font-size:24px}
.bandeau-verrou{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;border-radius:10px;background:#FFF8E6;border:1.5px solid #E5A100;font-size:14.5px}
.bandeau-verrou>span:nth-child(2){flex:1 1 320px}
.bandeau-verrou .pw-cadenas{width:30px;height:30px;background-size:14px}
.flou-zone{position:relative;margin-top:2px}
.flou{filter:blur(3px);opacity:.55;pointer-events:none;user-select:none;max-height:190px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 30%,transparent);mask-image:linear-gradient(#000 30%,transparent)}
.flou-cta{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;text-align:center;padding:12px}
.flou-cta strong{color:var(--navy)}
.flou-cta .pw-cadenas{width:30px;height:30px;background-size:14px}

/* ── Onglets de la page location : plus visibles ── */
.onglets{gap:6px;border-bottom:0;margin-top:0;padding:6px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 10px rgba(0,32,91,.05)}
.onglets a{padding:10px 16px;border-radius:9px;border-bottom:0;margin-bottom:0;font-size:15px;color:var(--ink-2);background:var(--bg)}
.onglets a:hover{background:var(--navy-50);color:var(--navy)}
.onglets a[aria-current="page"]{background:var(--navy);color:#fff;border-bottom:0}

/* ── Aide et contact ── */
.aide-grille{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:16px;align-items:start}
.aide-faq{display:flex;flex-direction:column;gap:16px;min-width:0}
.aide-contact{display:flex;flex-direction:column;gap:16px;position:sticky;top:16px}
.aide-contact .garanties{grid-template-columns:minmax(0,1fr)}
.faq-liste{display:flex;flex-direction:column;gap:6px}
.faq-liste .ast summary{cursor:pointer;padding:10px 12px;font-weight:700;color:var(--navy);list-style:none}
.faq-liste .ast summary::-webkit-details-marker{display:none}
.faq-liste .ast{border:1px solid var(--line-2);border-radius:8px}
.faq-liste .ast[open] summary{border-bottom:1px solid var(--line-2)}
.faq-liste .ast p{padding:10px 12px;font-size:14.5px}
.esp-form-1{grid-template-columns:minmax(0,1fr)}
@media (max-width:1000px){.aide-grille{grid-template-columns:minmax(0,1fr)}.aide-contact{position:static}}

/* ── Confiance (menu de l'espace) ── */
.esp-confiance{display:flex;flex-direction:column;gap:6px;margin-top:14px;padding:12px;border-radius:10px;background:var(--go-50);font-size:12.5px;line-height:1.35;color:var(--go-2)}
.ec-ligne{position:relative;padding-left:22px}
.ec-ligne::before{content:"";position:absolute;left:0;top:0;width:16px;height:16px;border-radius:50%;background:var(--go) var(--coche) center/9px no-repeat}
.ec-ligne b{color:var(--go-2)}

/* ── Paiement : part CAF ── */
.pai-total{font-size:14.5px;margin:0}
.pai-total strong{font-size:17px;color:var(--navy)}
@media (max-width:860px){.esp-confiance{display:none}}

/* Choix de la période de paiement : deux options bien visibles */
.periode-choix{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;margin:2px 0 4px}
.periode-q{align-self:center;font-weight:800;color:var(--navy);font-size:15px;margin-right:2px}
.periode-choix button{flex:1 1 230px;display:flex;align-items:flex-start;gap:10px;text-align:left;font:inherit;cursor:pointer;background:#fff;border:2px solid var(--line);border-radius:12px;padding:12px 14px;color:var(--ink);transition:border-color .15s,background .15s}
.periode-choix button:hover{border-color:var(--navy)}
.periode-choix button[aria-pressed="true"]{border-color:var(--go);background:var(--go-50);box-shadow:0 0 0 3px rgba(4,120,87,.12)}
.periode-choix button>span:last-child{display:flex;flex-direction:column;gap:2px}
.periode-choix strong{font-size:15.5px;color:var(--navy);display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.periode-choix small{font-size:13px;color:var(--muted)}
.pc-rond{flex:none;width:20px;height:20px;margin-top:1px;border-radius:50%;border:2px solid #9AA7BD;background:#fff}
.periode-choix button[aria-pressed="true"] .pc-rond{border-color:var(--go);box-shadow:inset 0 0 0 4px #fff;background:var(--go)}

/* Loyer dû ajustable (prorata) */
.pai-du-ligne{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.pai-du-ligne .input{flex:1 1 160px;max-width:240px}
.pai-du-bloc .help{margin-top:4px}
/* Grille des loyers : le cadenas se place à l'intérieur de la case (la case coupe ce qui dépasse) */
.cel-b.verrou{padding-right:14px;opacity:.85}
.cel-b.verrou::after{top:50%;right:3px;width:13px;height:13px;margin-top:-6.5px;background-size:7px;box-shadow:none}

/* Tableau des loyers : montants toujours sur une ligne */
.esp-table td.num,.esp-table th.num{white-space:nowrap}
/* Nouvelle location : les deux blocs ont la même hauteur */
.esp-grille-egale{align-items:stretch}
.esp-grille-egale>.card{display:flex;flex-direction:column;gap:10px}
.esp-grille-egale>.card .esp-actions{margin-top:auto}
/* Boutons de documents pré-remplis : icône et teinte légère */
.btn-doc{position:relative;padding-left:42px;background:#F6FBF8;border-color:#CDE9DA}
.btn-doc::before{content:"";position:absolute;left:12px;top:50%;width:20px;height:20px;margin-top:-10px;background:no-repeat center/20px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23047857' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 3v5h5M9 13h6M9 17h4'/%3E%3C/svg%3E")}
.btn-doc:hover{background:#E8F6EE;border-color:var(--go);color:var(--navy)}
/* Actions du tableau : les boutons passent à la ligne plutôt que de sortir du cadre */
.esp-table td.act .btn{display:inline-flex;vertical-align:middle;white-space:nowrap}
@media (max-width:1180px){.esp-table td.act{white-space:normal;min-width:150px}}

/* Connexion par code */
.esp-code{max-width:620px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.esp-code-input{font-size:26px!important;letter-spacing:8px;text-align:center;font-weight:800;max-width:260px}

/* ═══ Premier accueil (aucune location) ═══ */
.acc-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:32px;align-items:center;padding:32px 36px;overflow:hidden;position:relative;background:linear-gradient(135deg,#fff 0%,#fff 55%,var(--navy-50) 100%)}
.acc-texte{display:flex;flex-direction:column;gap:14px;min-width:0}
.acc-etapes{display:flex;flex-wrap:wrap;gap:6px 18px;list-style:none;margin:0 0 4px;padding:0;font-size:13.5px;font-weight:700;color:var(--muted)}
.acc-etapes li{display:flex;align-items:center;gap:8px;position:relative}
.acc-etapes li span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line);background:#fff;font-size:12.5px;color:var(--muted)}
.acc-etapes li.fait{color:var(--go)}
.acc-etapes li.fait span{background:var(--go) var(--coche) center/14px no-repeat;border-color:var(--go);color:transparent}
.acc-etapes li.encours{color:var(--navy)}
.acc-etapes li.encours span{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 0 0 4px rgba(0,32,91,.12)}
.acc-bonjour{font-weight:700;color:var(--go);font-size:15px}
.acc-titre{font-size:clamp(25px,3.2vw,34px);line-height:1.15;font-weight:800;color:var(--navy);letter-spacing:-.015em;margin:0;text-wrap:balance}
.acc-sous{font-size:16.5px;line-height:1.55;color:var(--ink-2);max-width:56ch}
.acc-cta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:6px}
.app .acc-cta .btn-lg{min-height:56px;font-size:17.5px;padding:0 28px;box-shadow:0 8px 22px rgba(4,120,87,.28)}
.acc-cta small{color:var(--muted);font-size:14px}
.acc-rassure{display:flex;flex-wrap:wrap;gap:6px 18px;list-style:none;margin:2px 0 0;padding:0;font-size:14px;color:var(--ink-2)}
.acc-rassure li{display:flex;align-items:center;gap:7px}
.acc-rassure li::before{content:"";width:18px;height:18px;border-radius:50%;background:var(--go) var(--coche) center/11px no-repeat;flex:none}
.acc-apercu{display:flex;justify-content:center;padding:8px 4px}
.acc-papier{position:relative;width:100%;max-width:330px;background:#fff;border:1px solid var(--line);border-radius:4px;padding:26px 24px 20px;box-shadow:0 1px 0 var(--line-2),0 18px 40px rgba(0,32,91,.14);transform:rotate(1.5deg);font-family:var(--serif)}
.acc-exemple{position:absolute;top:12px;left:12px;font-family:'DM Sans',system-ui,sans-serif;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--bg);border-radius:4px;padding:2px 7px}
.acc-q-titre{text-align:center;font-weight:700;font-size:17px;color:var(--navy);letter-spacing:.06em;text-transform:uppercase;margin-top:10px}
.acc-q-per{text-align:center;font-size:14px;color:var(--muted);margin-top:2px}
.acc-q-lignes{margin:18px 0 12px;border-top:1px solid var(--paper-line);font-size:14px}
.acc-q-lignes p{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--paper-line);color:var(--ink-2)}
.acc-q-lignes b{font-variant-numeric:tabular-nums;font-weight:600}
.acc-q-lignes .tot{color:var(--navy);font-weight:700;border-bottom:2px solid var(--navy)}
.acc-q-lignes .tot b{font-weight:700}
.acc-q-mention{font-size:12px;line-height:1.5;color:var(--muted);font-style:italic}
.acc-q-pied{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin-top:16px}
.acc-sign{font-family:'Brush Script MT','Segoe Script',cursive;font-size:22px;color:var(--navy-2);border-bottom:1px solid var(--line);padding:0 6px 2px}
.acc-envoye{font-family:'DM Sans',system-ui,sans-serif;font-size:12px;font-weight:700;color:var(--go);background:var(--go-50);border-radius:999px;padding:5px 10px 5px 26px;position:relative;white-space:nowrap}
.acc-envoye::before{content:"";position:absolute;left:8px;top:50%;width:13px;height:13px;margin-top:-6.5px;border-radius:50%;background:var(--go) var(--coche) center/8px no-repeat}
.acc-plus{display:flex;flex-direction:column;gap:10px;margin-top:4px}
.acc-grille{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.acc-carte{padding:18px;display:flex;flex-direction:column;gap:6px}
.acc-carte strong{color:var(--navy);font-size:15.5px}
.acc-carte p{font-size:14px;line-height:1.5}
.acc-ico{width:38px;height:38px;border-radius:10px;background:var(--navy-50) center/20px no-repeat;margin-bottom:4px}
.acc-ico-q{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300205B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z'/%3E%3Cpath d='M14 3v6h6M9 15l2 2 4-4'/%3E%3C/svg%3E")}
.acc-ico-r{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300205B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9'/%3E%3Cpath d='M10.3 21a1.94 1.94 0 0 0 3.4 0'/%3E%3C/svg%3E")}
.acc-ico-i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300205B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 17l6-6 4 4 8-8'/%3E%3Cpath d='M14 7h7v7'/%3E%3C/svg%3E")}
.acc-ico-d{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300205B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M7 8h10M7 12h10M7 16h6'/%3E%3C/svg%3E")}
.acc-bail,.esp-main .card.acc-bail{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}
.acc-bail>div:first-child{flex:1 1 380px;display:flex;flex-direction:column;gap:4px}
@media (max-width:980px){.acc-grille{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){.acc-hero{grid-template-columns:1fr;padding:24px 20px;gap:20px}.acc-apercu{order:-1;display:none}}
@media (max-width:520px){.acc-grille{grid-template-columns:1fr}.app .acc-cta .btn-lg{width:100%}.acc-cta small{width:100%;text-align:center}}
/* Supprimer mon compte */
.esp-suppr{border-color:#F3C6C1}
.esp-suppr .esp-h2{color:var(--err)}
.esp-suppr-form{display:flex;flex-direction:column;gap:12px;max-width:520px}
.app .btn-danger-plein{background:var(--err);color:#fff;border:0}
.app .btn-danger-plein:hover{background:#912018;color:#fff}
/* Gratuit à vie : 4 cartes de formules */
.tarifs-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1200px){.tarifs-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.tarifs-4{grid-template-columns:minmax(0,1fr)}}
.tarif-gratuit{border:2px solid var(--go)!important;background:linear-gradient(180deg,var(--go-50),#fff 60%)}
/* Formules : prix, textes et boutons alignés d'une carte à l'autre (sous-grille partagée) */
.tarif-gratuit .tag{position:absolute;top:-12px;right:14px}
.tarifs-3 .tarif-nom{min-height:2.7em;display:flex;align-items:flex-end}
@supports (grid-template-rows:subgrid){
  .tarifs-3{row-gap:16px}
  .tarifs-3 .tarif{display:grid;grid-template-rows:subgrid;grid-row:span 7;row-gap:6px;align-content:start}
  .tarifs-3 .tarif-nom{min-height:0}
  .tarifs-3 .tarif-bas{margin-top:0;align-self:end}
}
/* Kit d'arrivée du locataire */
.kit{border:2px solid #F2C14E;background:linear-gradient(180deg,#FFFBEF,#fff 55%)}
.kit-corps{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:860px){.kit-corps{grid-template-columns:minmax(0,1fr)}}
.kit-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.kit-liste li{display:flex;align-items:center;justify-content:space-between;gap:10px}
.kit-case{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.kit-case input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--go)}
.kit-case span{display:flex;flex-direction:column}
.kit-case strong{font-size:15px;color:var(--ink)}
.kit-case small{font-size:13px;color:var(--muted)}
.kit-case.fait strong{color:var(--muted);text-decoration:line-through}
.kit-guide{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}
.kit-guide small{color:var(--muted);font-size:13px}
.kit-guide-champs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
@media (max-width:520px){.kit-guide-champs{grid-template-columns:minmax(0,1fr)}}
.kit-ok{margin:0;padding:12px 14px;border-radius:10px;background:var(--go-50);color:var(--go-2);font-weight:600}

/* ═══ État des lieux numérique (mobile d'abord) ═══ */
.edl-app{display:flex;flex-direction:column;gap:0;max-width:760px;width:100%;margin:0 auto}
.edl-tete{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--navy);color:#fff;border-radius:14px 14px 0 0;padding:12px 14px 10px;display:flex;flex-direction:column;gap:8px}
.edl-tete-l{display:flex;gap:10px;align-items:center}
.edl-tete small{color:#C8D3E6;font-size:12.5px;display:block}
.edl-tete h1{color:#fff;font-size:19px;margin:0;line-height:1.25}
.edl-retour{flex:none;width:38px;height:38px;border-radius:10px;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:26px;line-height:1;display:grid;place-items:center;text-decoration:none;cursor:pointer}
.edl-jauge{height:5px;border-radius:99px;background:rgba(255,255,255,.2);overflow:hidden}
.edl-jauge i{display:block;height:100%;background:#7FD9AE}
.edl-sauve{font-size:11.5px;color:#C8D3E6;min-height:14px}
.edl-corps{display:flex;flex-direction:column;gap:12px;padding:14px 0 18px}
.edl-pied{position:sticky;bottom:0;z-index:5;display:flex;gap:8px;padding:10px 0 calc(10px + env(safe-area-inset-bottom,0px));background:var(--bg)}
.edl-pied .btn{flex:1}
.edl-carte,.edl-el{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px}
.edl-carte h2{font-size:16.5px;margin:0;color:var(--navy)}
.edl-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
@media (max-width:520px){.edl-2{grid-template-columns:minmax(0,1fr)}}
.edl-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
@media (max-width:420px){.edl-types{grid-template-columns:repeat(2,minmax(0,1fr))}}
.edl-type{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border:1.5px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;color:var(--navy);font:inherit}
.edl-type svg{width:64px;height:44px;color:var(--navy)}
.edl-type b{font-size:14px}
.edl-type small{font-size:12px;color:var(--muted)}
.edl-type.on{border:2px solid var(--go);background:var(--go-50)}
.edl-check{display:flex;gap:10px;align-items:flex-start;font-size:14.5px}
.edl-check input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--go)}
.edl-liste{display:flex;flex-direction:column;gap:8px}
.edl-piece{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;text-align:left;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;font:inherit;color:var(--ink)}
.edl-piece b{display:block;font-size:15.5px;color:var(--navy)}
.edl-piece small{color:var(--muted);font-size:13px}
.edl-ajout{display:flex;flex-direction:column;gap:6px}
.edl-ajout label{font-weight:700;font-size:14px}
.edl-actions-piece{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.edl-actions-piece .input{flex:1 1 160px;min-width:0}
.edl-el-tete{display:flex;justify-content:space-between;align-items:center;gap:8px}
.edl-el h3{margin:0;font-size:15.5px;color:var(--navy)}
.edl-el-pire{border-color:var(--err);box-shadow:inset 4px 0 0 var(--err)}
.edl-ref{margin:-4px 0 0;font-size:13px;color:var(--muted)}
.edl-etats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
@media (max-width:420px){.edl-etats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.edl-etat{min-height:42px;border:1.5px solid var(--line);border-radius:10px;background:#fff;font:600 13.5px var(--f,inherit);cursor:pointer;color:var(--ink);padding:0 4px}
.edl-etat.on{color:#fff}
.edl-etat.edl-neuf.on{background:var(--navy);border-color:var(--navy)}
.edl-etat.edl-bon.on{background:var(--go);border-color:var(--go)}
.edl-etat.edl-usage.on{background:#8A5A00;border-color:#8A5A00}
.edl-etat.edl-degrade.on{background:var(--err);border-color:var(--err)}
.edl-photos{display:flex;flex-wrap:wrap;gap:8px}
.edl-ph{position:relative;width:72px;height:72px;border-radius:10px;overflow:hidden;background:var(--bg);flex:none}
.edl-ph img{width:100%;height:100%;object-fit:cover;display:block}
.edl-ph-x{position:absolute;top:3px;right:3px;width:24px;height:24px;border-radius:50%;border:0;background:rgba(0,0,0,.6);color:#fff;font-size:16px;line-height:1;cursor:pointer}
.edl-ph-ajout{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1.5px dashed var(--navy);background:#fff;color:var(--navy);cursor:pointer}
.edl-ph-ajout span{font-size:24px;font-weight:800;line-height:1}
.edl-ph-ajout small{font-size:11.5px;font-weight:700}
.edl-mini{border:0;background:none;color:var(--muted);font:600 13px inherit;text-decoration:underline;cursor:pointer;padding:4px}
.edl-index{font-variant-numeric:tabular-nums;font-size:17px;letter-spacing:.03em}
.edl-cle{display:grid;grid-template-columns:minmax(0,1fr) 80px;gap:8px}
.edl-recap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;font-size:14.5px}
.edl-recap b{text-align:right;font-variant-numeric:tabular-nums}
.edl-dif{border-color:var(--err)}
.edl-dif p{margin:0;font-size:14px}
.edl-sig{position:relative}
.edl-sig canvas{display:block;width:100%;height:140px;border:1.5px dashed var(--line);border-radius:10px;background:#fff;touch-action:none}
.edl-sig .edl-mini{position:absolute;top:4px;right:6px}
.edl-fini{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:24px 8px}
.edl-fini h2{margin:0;color:var(--navy)}
.edl-coche{width:60px;height:60px;border-radius:50%;background:var(--go) var(--coche) center/30px no-repeat}
/* États des lieux : lignes, nouveaux, « sur mon téléphone » */
.edl-lignes{display:flex;flex-direction:column;gap:8px}
.edl-ligne{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}
.edl-ligne-ic{width:38px;height:38px;border-radius:10px;background:var(--navy-50) no-repeat center/20px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300205B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='2' width='14' height='20' rx='2'/%3E%3Cpath d='M9 7h6M9 11h6M9 15h4'/%3E%3C/svg%3E")}
.edl-ligne-ic.ok{background-color:var(--go-50)}
.edl-ligne-t{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.edl-ligne-t strong{color:var(--navy);font-size:15px}
.edl-ligne-a{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media (max-width:600px){.edl-ligne{grid-template-columns:auto minmax(0,1fr)}.edl-ligne-a{grid-column:1/-1;justify-content:flex-start}}
.edl-nouveaux{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:4px}
.edl-nouveau{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.edl-tel{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center;padding:14px;border:2px solid var(--go);border-radius:12px;background:var(--go-50)}
.edl-tel-qr{width:148px;height:148px;background:#fff;padding:6px;border-radius:8px;box-sizing:content-box}
.edl-tel-qr img,.edl-tel-qr canvas{display:block}
.edl-tel-t{display:flex;flex-direction:column;gap:8px}
.edl-tel-t strong{color:var(--navy)}
.edl-tel-t p{margin:0;font-size:14px;color:var(--ink-2)}
@media (max-width:600px){.edl-tel{grid-template-columns:minmax(0,1fr)}.edl-tel-qr{display:none}}
.edl-zone{display:flex;flex-direction:column;gap:12px}
.edl-2>*,.edl-carte>*,.edl-el>*{min-width:0}
/* Candidats (analyse du dossier locataire) */
.cand-box{overflow-x:auto;-webkit-overflow-scrolling:touch}
.cand-tbl{min-width:760px}
.cand-tbl tr.cand-choisi td{background:var(--go-50)}
.cand-act{white-space:nowrap}.cand-act>*{margin-right:10px;vertical-align:middle}
.cand-lien{background:none;border:0;padding:4px;font:inherit;font-size:14px;color:var(--navy);text-decoration:underline;cursor:pointer}
.ds-pastille{display:inline-flex;min-width:36px;justify-content:center;border-radius:999px;padding:2px 8px;font-weight:800;color:#fff;background:var(--muted)}
.ds-pastille.ds-ok{background:#047857}.ds-pastille.ds-ok2{background:#3F9B6E}.ds-pastille.ds-moyen{background:#C98A0B}.ds-pastille.ds-haut{background:#D9622B}.ds-pastille.ds-tres{background:#B42318}
.acc-dossier{display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center;justify-content:space-between;border:2px solid var(--go);background:#F3FBF7}
.acc-dossier p{margin:4px 0 0}
.edl-el-manque{border:2px solid #B42318;background:#FFF6F5}
.edl-manque-t{margin:0;font-size:14px;font-weight:700;color:#B42318}
.edl-loc-t{font-size:16px;color:var(--navy);margin:14px 0 8px}
@media (max-width:700px){body:has(#edl-app) #assistant-ouvrir{display:none}}
/* Diagnostics obligatoires (fiche logement) */
.diag-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px 16px;margin:4px 0 14px;align-items:end}
.diag-form label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.diag-bilan{margin:4px 0 10px;font-size:16px;color:var(--navy)}
.diag-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.diag-liste li{display:grid;grid-template-columns:150px 1fr;gap:12px;align-items:start;border:1px solid var(--line-2);border-radius:10px;padding:10px 12px}
.diag-liste li div{display:flex;flex-direction:column;gap:2px;min-width:0}
.diag-liste strong{color:var(--navy)}
.diag-liste span:not(.diag-st){font-size:14.5px;color:var(--ink-2)}
.diag-liste small{font-size:13px;color:var(--muted)}
.diag-st{display:inline-flex;justify-content:center;font-size:12.5px;font-weight:800;border-radius:999px;padding:3px 10px;text-align:center}
.diag-oui .diag-st{background:var(--navy);color:#fff}
.diag-oui{border-color:#B9C6E0;background:#F7F9FD}
.diag-non .diag-st{background:var(--bg);color:var(--muted)}
.diag-non{opacity:.78}
.diag-verif .diag-st{background:#FFF3D6;color:#7A5200}
.diag-dispo .diag-st{background:var(--go-50);color:var(--go-2)}
@media (max-width:560px){.diag-liste li{grid-template-columns:1fr;gap:6px}.diag-st{justify-self:start}}
/* Loyer du marché */
.marche-ref{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 14px;color:var(--ink-2);font-size:14.5px}
.marche-ref .tag{margin:0}
.marche-chiffres{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:0 0 8px}
.marche-chiffres div{background:var(--bg);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px;min-width:0}
.marche-chiffres span{font-size:13px;color:var(--muted)}.marche-chiffres b{font-size:20px;color:var(--navy)}.marche-chiffres small{font-size:13px;color:var(--muted)}
.marche-jauge{padding:44px 6px 0;margin:0 0 6px}
.mj-piste{position:relative;height:8px;border-radius:999px;background:#E9EDF4}
.mj-zone{position:absolute;top:0;bottom:0;border-radius:999px;background:linear-gradient(90deg,#BFE6D2,#D6E4F7 50%,#F6CFCB)}
.mj-moy{position:absolute;top:-5px;width:2px;height:18px;background:var(--navy);opacity:.45;transform:translateX(-50%)}
.mj-vous{position:absolute;top:50%;width:20px;height:20px;border-radius:50%;background:var(--navy);border:3px solid #fff;box-shadow:0 1px 5px rgba(0,0,0,.3);transform:translate(-50%,-50%)}
.mj-vous b{position:absolute;bottom:calc(100% + 9px);left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--navy);color:#fff;font-size:13px;font-weight:700;padding:4px 9px;border-radius:7px}
.mj-vous b::after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-top-color:var(--navy)}
.droite .mj-vous b{left:auto;right:-8px;transform:none}.droite .mj-vous b::after{left:auto;right:8px}
.gauche .mj-vous b{left:-8px;transform:none}.gauche .mj-vous b::after{left:8px;margin-left:0}
.mj-vous.mj-ok{background:#1F9D63}.mj-vous.mj-ok b{background:#1F9D63}.mj-vous.mj-ok b::after{border-top-color:#1F9D63}
.mj-vous.mj-hors{background:#C8432F}.mj-vous.mj-hors b{background:#C8432F}.mj-vous.mj-hors b::after{border-top-color:#C8432F}
.mj-echelle{position:relative;height:40px;margin-top:8px;font-size:12.5px;color:var(--muted)}
.mj-echelle span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.mj-echelle .mj-e-moy{top:19px;color:var(--navy);font-weight:600}
.marche-jauge .mj-echelle span:first-child{transform:translateX(-30%)}.marche-jauge .mj-echelle span:last-child{transform:translateX(-70%)}
.marche-verdict{margin:6px 0 10px;font-size:16px;color:var(--navy);padding:10px 12px;border-radius:10px;background:var(--navy-50)}
.marche-verdict.mv-ok{background:#E6F6EE}.marche-verdict.mv-hors{background:#FDECEA}
.marche-source{font-size:12.5px}
.marche-choix{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;align-items:end}
.marche-aide{background:var(--navy-50);border-radius:8px;padding:10px 12px;color:var(--ink-2)}
.cand-marche p{margin:6px 0 0}
.tag-warn{background:#FFF3D6;color:#7A5200}

/* Logement libre : trouver un locataire */
.tl-etapes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.tl-etape{display:flex;align-items:center;gap:12px 14px;padding:12px 0;border-top:1px solid var(--line-2);flex-wrap:wrap}
.tl-etape:first-child{border-top:0;padding-top:4px}
.tl-n{flex:none;width:30px;height:30px;border-radius:50%;background:var(--navy-50);color:var(--navy);font-weight:800;display:grid;place-items:center;font-size:14px}
.tl-etape>div{flex:1 1 220px;display:flex;flex-direction:column;min-width:0}
.tl-etape>div span{font-size:14px;color:var(--muted)}
.tl-etape .btn{flex:none}
@media(max-width:560px){.tl-etape .btn{margin-left:44px}}

/* Assistant de régularisation des charges */
.rg{display:flex;flex-direction:column;gap:12px}
.rg-aide{margin:0;font-size:14.5px;color:var(--ink-2)}
.rg-rapide{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.rg-rapide>span{font-size:13px;color:var(--muted);margin-right:2px}
.rg-lignes{display:flex;flex-direction:column;gap:8px}
.rg-ligne{display:grid;grid-template-columns:minmax(0,1fr) 130px 34px;gap:8px;align-items:center;padding:10px;border:1px solid var(--line-2);border-radius:10px;background:var(--bg)}
.rg-ligne .input{min-height:40px;font-size:14.5px}
.rg-ligne [data-rg="libelle"]{grid-column:1;grid-row:1}.rg-ligne [data-rg="montant"]{grid-column:2;grid-row:1}.rg-ligne .rg-suppr{grid-column:3;grid-row:1}
.rg-ligne select{grid-column:1/3;grid-row:2;min-height:34px!important;font-size:13.5px!important;color:var(--ink-2);max-width:340px}
.rg-suppr{width:34px;height:34px;border:0;border-radius:8px;background:#fff;color:var(--muted);font-size:20px;line-height:1;cursor:pointer}.rg-suppr:hover{color:var(--danger,#C8432F)}
.rg-v{grid-column:1/-1;margin:0;font-size:13.5px;line-height:1.45;padding:6px 10px;border-radius:8px}
.rg-non{background:#FDECEA;color:#8A2A1C}.rg-partiel{background:#FFF6DD;color:#6B4E00}
.rg-vide{margin:0;font-size:14px}
.rg-opt{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;cursor:pointer}.rg-opt input{width:18px;height:18px;margin-top:2px;flex:none;accent-color:var(--go)}
.rg-res:empty{display:none}
.rg-res{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rg-res div{background:var(--bg);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.rg-res span{font-size:13px;color:var(--muted)}.rg-res b{font-size:19px;color:var(--navy)}
.rg-res .rg-du{background:#FFF6DD}.rg-res .rg-rendre{background:var(--go-50)}
@media(max-width:640px){.rg-ligne{grid-template-columns:minmax(0,1fr) 34px}.rg-ligne [data-rg="libelle"]{grid-column:1/-1;grid-row:1}.rg-ligne [data-rg="montant"]{grid-column:1;grid-row:2}.rg-ligne .rg-suppr{grid-column:2;grid-row:2}.rg-ligne select{grid-column:1/-1;grid-row:3;max-width:none}.rg-res{grid-template-columns:1fr}}

/* Parcours « Loyer impayé » */
.imp-bandeau{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;padding:12px 16px;border-radius:12px;background:#FFF6DD;border:1px solid #F1D48A}
.imp-bandeau div{display:flex;flex-direction:column;min-width:0}.imp-bandeau strong{color:#6B4E00}.imp-bandeau span{font-size:14px;color:var(--ink-2)}
.imp-bandeau.imp-urgent{background:#FDECEA;border-color:#F3B4AA}.imp-bandeau.imp-urgent strong{color:#8A2A1C}
.imp-chiffres{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px 18px}
.imp-rouge{color:var(--err,#C8432F);font-size:20px}
.imp-reglages{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line-2)}
.imp-etape-t{display:flex;align-items:center;gap:12px}
.imp-n{flex:none;width:32px;height:32px;border-radius:50%;background:var(--navy);color:#fff;font-weight:800;display:grid;place-items:center}
.imp-etape-urgent{border-color:#F3B4AA;box-shadow:0 0 0 3px #FDECEA}.imp-etape-urgent .imp-n{background:var(--err,#C8432F)}
.imp-actions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.imp-action{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--line-2)}
.imp-action:first-child{border-top:0}
.imp-action>div{flex:1 1 280px;display:flex;flex-direction:column;gap:2px;min-width:0}
.imp-action>div>span{font-size:14px;color:var(--ink-2);line-height:1.5}
.imp-action .btn{flex:none}
.imp-ok>div>strong{color:var(--go)}
.imp-fait{display:inline-flex;gap:7px;align-items:center;font-size:13px;color:var(--muted);cursor:pointer;margin-top:4px}
.imp-fait input{width:16px;height:16px;accent-color:var(--go)}
.imp-ok .imp-fait{color:var(--go);font-weight:700}
.imp-seuil-t{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;font-size:14.5px}
.imp-barre{height:10px;border-radius:999px;background:#E9EDF4;margin:8px 0 4px;overflow:hidden}
.imp-barre i{display:block;height:100%;background:#E3A008;border-radius:999px}.imp-barre i.imp-barre-rouge{background:var(--err,#C8432F)}
.imp-proc{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;line-height:1.55}
.kpi-lien{display:inline-block;margin-top:8px;font-size:14px;font-weight:700;color:var(--err);text-decoration:underline;text-underline-offset:3px}
.btn-aide{font-weight:800;color:var(--err)!important;border-color:#F3B4AA!important}.btn-aide:hover{background:#FDECEA}
.rg-bilan{margin:0;font-size:14px;padding:9px 12px;border-radius:10px;background:var(--navy-50);color:var(--ink-2)}
.rg-bilan:empty{display:none}
tr.ligne-clic{cursor:pointer}tr.ligne-clic:hover td{background:var(--bg)}
.lien-nom{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-2)}.lien-nom:hover{text-decoration-color:currentColor}
/* Loyers : aide aux retards */
.grille th.avec-aide{padding-right:38px}
.grille th[scope="row"] a.grille-aide{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1.5px solid #F3B4AA;background:#fff;color:var(--err);font-size:12px;font-weight:800;overflow:visible}
.grille th[scope="row"] a.grille-aide:hover{background:#FDECEA}
.retards{gap:0}
.retard{padding:14px 0;border-top:1px solid var(--line-2);display:flex;flex-direction:column;gap:10px}
.retard:first-of-type{border-top:0}
.retard-tete{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.retard-tete div{display:flex;flex-direction:column;min-width:0}.retard-tete span{font-size:14px;color:var(--muted)}
.retard-etapes{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;counter-reset:et}
.retard-etapes li{counter-increment:et;font-size:13px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--bg);color:var(--ink-2);border:1px solid var(--line-2)}
.retard-etapes li:not(.ok)::before{content:counter(et) ". ";color:var(--muted)}
.retard-etapes li.ok{background:var(--go-50);color:var(--go);border-color:#A7DCC2}
.retard-etapes li.urgent{background:#FDECEA;color:#8A2A1C;border-color:#F3B4AA}
/* Carte « Ajouter » */
.carte-ajout{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;min-height:200px;border:1.5px dashed #B9C6DA;background:linear-gradient(135deg,#F7F9FD,#EEF3FB);box-shadow:none;text-decoration:none}
.carte-ajout:hover{border-color:var(--navy);background:#EEF3FB}
.carte-ajout-plus{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:1.5px dashed var(--navy);color:var(--navy);font-size:28px;font-weight:300;line-height:1}
.carte-ajout small{color:var(--muted);font-size:13.5px}
.lien-btn{background:none;border:0;padding:0;font:inherit;font-weight:700;color:var(--navy);text-decoration:underline;text-underline-offset:2px;cursor:pointer}
/* Choix du propriétaire */
.champ-proprio-l{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.champ-proprio-l select{flex:0 1 340px;min-width:220px}
.champ-proprio-info{margin:0;flex:1 1 260px;font-size:13.5px;color:var(--muted);line-height:1.45}
.pw-cadenas-mini{margin-right:4px}
.tarifs-seule{display:grid;grid-template-columns:minmax(0,340px);justify-content:center}
/* Offre gratuite : rassurer */
.offre-gratuite{background:linear-gradient(135deg,#F2FBF6,#FFFFFF 60%);border-color:#A7DCC2;gap:14px}
.og-tete{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.og-badge{display:inline-block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--go)}
.og-titre{margin:2px 0 0;font-size:26px;font-weight:800;color:var(--navy)}.og-titre span{display:inline-block;margin-left:8px;font-size:15px;font-weight:800;color:#fff;background:var(--go);border-radius:999px;padding:3px 10px;vertical-align:5px}
.og-sous{margin:4px 0 0;color:var(--ink-2)}
.og-zero{flex:none;font-size:13px;font-weight:800;color:var(--go);border:2px solid var(--go);border-radius:999px;padding:6px 12px;transform:rotate(-4deg);white-space:nowrap}
.og-liste{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px;align-items:stretch}
@media (max-width:760px){.og-liste{grid-template-columns:1fr}}
.og-liste li{position:relative;padding-left:28px;line-height:1.5;font-size:15px}
.og-liste li::before{content:"✓";position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;background:var(--go);color:#fff;font-size:12px;font-weight:800;display:grid;place-items:center}
.og-note{margin:0;font-size:14px;color:var(--muted)}
.og-formules-t{margin-top:22px;font-size:26px;line-height:1.25}
@media(max-width:560px){.og-zero{display:none}.og-tete{flex-wrap:wrap}.og-formules-t{font-size:22px}}
.og-qui{margin:14px 0 4px;font-size:15px;line-height:1.55;color:var(--navy);background:#fff;border:1px solid #D6EFE3;border-left:4px solid var(--go);border-radius:10px;padding:10px 14px}
.og-tete{align-items:center}
.og-avis{flex:none;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #F3E2B3;border-radius:12px;padding:8px 14px;box-shadow:0 2px 8px rgba(0,32,91,.05)}
.og-avis>b{font-size:26px;line-height:1;color:var(--navy)}.og-avis>b small{font-size:14px;color:var(--muted);font-weight:600}
.og-avis>span{display:flex;flex-direction:column;font-size:13px;color:var(--muted);line-height:1.3}.og-avis .acc-et{font-size:16px;letter-spacing:1px}
.encart-avis{display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;gap:8px 20px;flex-wrap:wrap;background:#F2FBF6;border-color:#A7DCC2;padding:10px 20px;min-height:0;height:auto;align-self:start}
.encart-avis .esp-actions{margin:0}
.encart-avis>div:first-child{display:flex;flex-direction:column;gap:2px;flex:1 1 320px}.encart-avis span{font-size:14px;color:var(--ink-2)}
/* Logement décent */
.decent-form{display:flex;flex-direction:column;gap:14px}
.dec-groupe{border:1px solid var(--line-2);border-radius:12px;padding:6px 14px 10px;margin:0}
.dec-groupe legend{font-weight:800;color:var(--navy);padding:0 6px}
.dec-q{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;padding:9px 0;border-top:1px solid var(--line-2)}
.dec-q:first-of-type{border-top:0}
.dec-q>div:first-child{flex:1 1 300px;display:flex;flex-direction:column;gap:2px;min-width:0}.dec-q strong{font-size:14.5px;font-weight:600}.dec-q small{font-size:12.5px;color:var(--muted);line-height:1.4}
.dec-choix{display:flex;gap:4px;flex:none}
.dec-choix label{cursor:pointer}.dec-choix input{position:absolute;opacity:0;pointer-events:none}
.dec-choix span{display:inline-block;padding:5px 11px;border:1.5px solid var(--line-2);border-radius:999px;font-size:13px;font-weight:600;color:var(--ink-2);background:#fff}
.dec-choix input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}
.dec-choix input[value="non"]:checked+span{background:#C8432F;border-color:#C8432F}
.dec-choix input[value="oui"]:checked+span{background:var(--go);border-color:var(--go)}
.dec-q:has(input[name="dec-ss"]) .dec-choix input[value="oui"]:checked+span{background:#C8432F;border-color:#C8432F}
.dec-q:has(input[name="dec-ss"]) .dec-choix input[value="non"]:checked+span{background:var(--go);border-color:var(--go)}
.dec-choix input:focus-visible+span{outline:3px solid var(--navy-50)}
.dec-bilan{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border-radius:12px;margin-top:16px}
.dec-bilan strong{font-size:18px}.dec-ok{background:#E6F6EE;color:#0B6B47}.dec-verif{background:#FFF6DD;color:#6B4E00}.dec-non{background:#FDECEA;color:#8A2A1C}
.dec-liste{margin:8px 0 0;padding-left:20px;font-size:14.5px;line-height:1.55}.dec-liste-non li{color:#8A2A1C}.dec-liste-av li{color:#6B4E00}
.dec-dpe{margin:10px 0 0;font-size:14px;color:var(--ink-2)}
.dec-choix input[value=""]:checked+span{background:#EEF1F6;border-color:#D5DBE5;color:var(--muted)}
/* Documents à remettre au locataire */
.rem{gap:14px}
.rem-tete{display:flex;justify-content:space-between;align-items:flex-start;gap:12px 20px;flex-wrap:wrap}.rem-tete>div:first-child{flex:1 1 380px}
.rem-prog{display:flex;flex-direction:column;align-items:flex-end;gap:6px;min-width:200px}
.rem-prog b{font-size:22px;color:var(--navy)}.rem-prog small{color:var(--muted);font-size:13px}
.rem-barre{width:220px;max-width:100%;height:10px;border-radius:999px;background:#E9EDF4;overflow:hidden}.rem-barre i{display:block;height:100%;background:var(--go);border-radius:999px}
.rem-g{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:6px 0 0}.rem-g span{text-transform:none;font-weight:600;letter-spacing:0}
.rem-l{list-style:none;margin:0;padding:0;border:1px solid var(--line-2);border-radius:12px;overflow:hidden}
.rem-l li{display:flex;align-items:center;gap:8px 12px;padding:10px 14px;border-top:1px solid var(--line-2);flex-wrap:wrap}
.rem-l li:first-child{border-top:0}
.rem-c-l{flex:none;cursor:pointer;display:grid}.rem-c-l input{position:absolute;opacity:0;width:22px;height:22px;margin:0;cursor:pointer}
.rem-c{flex:none;width:22px;height:22px;border-radius:6px;border:2px solid #B9C6DA;display:grid;place-items:center;font-size:13px;font-weight:800;color:#fff;background:#fff}
.rem-c-l input:focus-visible+.rem-c{outline:3px solid var(--navy-50)}
.rem-l li.ok .rem-c{background:var(--go);border-color:var(--go)}
.rem-l li.nc .rem-c{background:#EEF1F6;border-color:#D5DBE5}
.rem-l li.manque{background:#FFFBF0}
.rem-t{flex:1 1 260px;display:flex;flex-direction:column;min-width:0}.rem-t strong{font-size:14.5px}.rem-t>span{font-size:13px;color:var(--muted)}
.rem-l li.nc .rem-t strong{color:var(--muted);font-weight:600}
.rem-auto{font-size:11.5px;font-weight:700;color:var(--go);background:var(--go-50);border-radius:999px;padding:2px 8px;margin-left:4px}
.rem-nc{font-size:11.5px;font-weight:700;color:var(--muted);background:#EEF1F6;border-radius:999px;padding:2px 8px;margin-left:4px}
.rem-nc-b{font-size:13px;font-weight:600;color:var(--muted)}
.rem-l li .btn{flex:none}
.rem-sanction{font-size:13px;color:var(--muted);margin:0;padding:10px 12px;background:var(--bg);border-radius:10px}
.rem-bandeau{display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;padding:12px 16px!important;border-color:#F1D48A;background:#FFFBF0;min-height:0;height:auto;align-self:stretch;width:100%;box-sizing:border-box}
.rem-bandeau .btn{flex:none}
.rem-bandeau>div{display:flex;flex-direction:column;flex:1 1 300px}.rem-bandeau .muted{font-size:14px}

/* Onglets : sur ordinateur, ils passent à la ligne au lieu de défiler ; sur mobile, défilement sans barre, avec un fondu à droite */
.onglets{flex-wrap:wrap;overflow:visible}
@media(max-width:760px){
  .onglets{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
  .onglets::-webkit-scrollbar{display:none}
  .onglets a{scroll-snap-align:start}
}
.onglets{gap:5px}.onglets a{padding:9px 13px;font-size:14.5px}
.rem-assur{display:flex;flex-direction:column;gap:3px;flex:none}.rem-assur label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--navy,#1B2A4A)}
.rem-assur input{font:inherit;font-weight:500;padding:5px 8px;border:1px solid var(--line-2);border-radius:8px;background:#fff}.rem-assur small{font-size:12.5px;color:var(--muted)}
@media (max-width:560px){.rem-assur{flex-basis:100%}}
/* Aperçu de la location : résumé logement / locataire / bail + actions rares */
.res-grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.res-carte{display:flex;flex-direction:column;gap:4px;min-width:0}
.res-tete{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px}.res-tete .esp-h3{margin:0}.res-tete .lien-fleche{font-size:13.5px}
.res-l1{margin:0;font-weight:700;color:var(--navy);overflow-wrap:anywhere}.res-l1 a{color:inherit}
.res-l2{margin:0;font-size:13.5px;color:var(--muted);overflow-wrap:anywhere}
.res-pers+.res-pers{border-top:1px solid var(--line-2);padding-top:8px;margin-top:6px}
.res-carte .esp-actions{margin-top:8px}
.res-gestion{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;justify-content:flex-end;margin:4px 0 0;font-size:13.5px;color:var(--muted)}
.res-gestion .lien-btn{font-size:13.5px;font-weight:600;color:var(--muted)}.res-gestion .res-suppr:hover{color:var(--err)}
@media (max-width:980px){.res-grille{grid-template-columns:minmax(0,1fr)}.res-gestion{justify-content:flex-start}}
/* Annonces privées */
.ann-prive{display:flex;gap:16px;align-items:flex-start;background:var(--navy);color:#fff;border-radius:12px;padding:18px 22px;margin-bottom:16px}
.ann-prive-ico{width:48px;height:48px;border-radius:12px;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;flex:none}
.ann-prive strong{display:block;font-size:18px;margin-bottom:2px}.ann-prive p{margin:0;color:#D7E0F0;font-size:15px}
.ann-kpis{margin-bottom:16px}
.ann-liste{display:flex;flex-direction:column;gap:14px}
.ann-carte{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;padding:16px}
.ann-carte.ann-on{box-shadow:inset 3px 0 0 var(--go)}
.ann-virtuelle{background:#FFFBF0;border:1.5px dashed #E0C27A}
.ann-photo{width:150px;height:104px;border-radius:8px;background:#DCE3EE;flex:none;display:flex;align-items:center;justify-content:center;overflow:hidden;text-decoration:none;color:var(--muted);font-size:12.5px;font-weight:700;text-align:center;padding:4px}
.ann-photo img{width:100%;height:100%;object-fit:cover}
.ann-corps{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:6px}
.ann-l1{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13.5px}
.ann-tag{font-size:12.5px;font-weight:800;padding:3px 10px;border-radius:999px;white-space:nowrap}
.ann-tag-ok{background:var(--go-50);color:var(--go-2)}.ann-tag-att{background:#FFF1CC;color:#7A5200}.ann-tag-gris{background:#EEF1F6;color:var(--muted)}
.ann-titre{font-weight:800;font-size:17px;text-decoration:none;color:var(--navy)}
.ann-stats{font-size:14px}
.ann-note{margin:0;font-size:13.5px;color:#7A5200;background:#FFF8E6;border:1px solid #F0D9A0;border-radius:8px;padding:8px 10px}
.ann-pdf,.ann-lien{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ann-lien .input{flex:1 1 220px;min-width:0;min-height:36px;font-size:13.5px;background:var(--bg)}
.ann-cote{flex:1 1 200px;max-width:250px;display:flex;flex-direction:column;gap:8px}
.ann-cote .btn{width:100%}
.ann-actif{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:700;color:var(--navy);cursor:pointer;padding:4px 0}
.ann-actif input{width:20px;height:20px;flex:none;accent-color:var(--go);margin:1px 0 0}
.ann-actif small{display:block;font-size:12px;font-weight:500;color:var(--muted)}
.ann-actif-off{cursor:default;opacity:.85}
.ann-liens{display:flex;gap:12px;flex-wrap:wrap;font-size:13.5px;font-weight:700}
.ann-liens .lien-btn{font-size:13.5px;color:var(--muted)}
.ann-masquees{margin-top:8px}
@media (max-width:640px){.ann-photo{width:100%;height:170px}.ann-cote{max-width:none}}
/* Éditeur */
.ann-form{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}
.ann-form-g{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:16px}
.ann-aside{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:14px;position:sticky;top:16px}
.ann-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.ann-type{display:flex;flex-direction:column;gap:3px;padding:14px;border-radius:10px;border:1.5px solid var(--line);cursor:pointer}
.ann-type:has(input:checked){border:2px solid var(--navy);background:var(--navy-50)}
.ann-type input{width:18px;height:18px;margin:0 0 4px;accent-color:var(--navy)}.ann-type strong{color:var(--navy)}.ann-type span{font-size:13.5px;color:var(--muted)}
.ann-coloc,.ann-nouveau{margin-top:12px}
.ann-repris{margin:10px 0 0;font-size:14px;color:var(--go-2);background:var(--go-50);border-radius:8px;padding:9px 12px}
.ann-case{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;cursor:pointer}
.ann-case input{width:20px;height:20px;flex:none;accent-color:var(--go);margin:1px 0 0}
.ann-case small{display:block;font-size:12.5px;color:var(--muted)}
.ann-cases{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px 16px;margin-top:8px}
.ann-h3{font-size:15px;color:var(--navy);margin:12px 0 2px}
.ann-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-bottom:10px}
.ann-ph{position:relative;margin:0;border-radius:8px;overflow:hidden;background:#DCE3EE;aspect-ratio:4/3}
.ann-ph img{width:100%;height:100%;object-fit:cover;display:block}
.ann-ph-1,.ann-ph-b{position:absolute;left:6px;bottom:6px;font-size:11.5px;font-weight:800;background:rgba(0,22,64,.82);color:#fff;border:0;border-radius:6px;padding:3px 7px;font-family:inherit}
.ann-ph-b{cursor:pointer;background:rgba(255,255,255,.92);color:var(--navy)}
.ann-ph-x{position:absolute;top:6px;right:6px;width:30px;height:30px;border-radius:999px;border:0;background:rgba(255,255,255,.92);color:var(--err);font-size:18px;font-weight:800;cursor:pointer;line-height:1}
.ann-ajout{cursor:pointer}
.ann-mentions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;font-size:14px}
.ann-mentions li{display:flex;gap:8px;align-items:flex-start}
.ann-mentions span{width:20px;height:20px;flex:none;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}
.ann-mentions .ok span{background:var(--go);color:#fff}.ann-mentions .ko span{background:#FFF8E6;color:#7A5200;border:1px solid #F0D9A0}.ann-mentions .facult span{background:#EEF1F6;color:var(--muted)}
.ann-ensuite p{margin:0;font-size:14px}
@media (max-width:900px){.ann-aside{position:static}}
/* Partage */
.ann-partage{display:flex;flex-direction:column;gap:12px;padding:22px;max-width:460px}
.ann-partage-qr{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-size:14px;color:var(--muted)}
.ann-qr{width:220px;height:220px;max-width:100%;image-rendering:pixelated;border:2px solid var(--navy);border-radius:10px;padding:6px;background:#fff}
.ann-canaux{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}
.ann-qr-manque{font-size:13px;color:var(--muted)}
.ann-photos>p{grid-column:1/-1;margin:0}
.ann-form .field:has(#an-titre),.ann-form .field:has(#an-desc){grid-column:1/-1}
#an-desc{min-height:150px}
.ann-kpis .kpi span{flex:1 1 auto}.ann-kpis .kpi b{margin-top:auto}
/* Impôts : revenus fonciers */
.fisc-avert{margin-bottom:16px}
.esp-main .card.panel.fisc-lien,.fisc-lien{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:10px 24px;flex-wrap:wrap;text-decoration:none;margin:16px 0;padding:20px 24px;box-shadow:inset 4px 0 0 var(--go)}
.fisc-lien>span:first-child{display:flex;flex-direction:column;gap:2px;flex:1 1 320px;min-width:0}
.fisc-lien strong{display:block;color:var(--navy);font-size:16px}.fisc-lien small{display:block;color:var(--muted);font-size:14px}
.fisc-lignes{display:flex;flex-direction:column;margin-top:8px}
.fisc-l{display:grid;grid-template-columns:86px minmax(0,1fr) 140px;gap:6px 14px;align-items:center;padding:10px 0;border-top:1px solid var(--line-2)}
.fisc-l strong{display:block;font-size:14.5px}.fisc-l small{display:block;font-size:12.5px;color:var(--muted)}
.fisc-n{font-size:12.5px;font-weight:800;color:var(--muted)}
.fisc-in{text-align:right;font-weight:700;min-height:40px}
.fisc-tmi{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--navy)}.fisc-tmi .input{width:auto;min-height:40px}
.fisc-choix{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:12px}
.fisc-c{position:relative;border:1.5px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:5px;font-size:14px}
.fisc-c strong{font-size:16px;color:var(--navy)}.fisc-c small{color:var(--muted);font-size:13px}
.fisc-mieux{border:2px solid var(--go);background:#F2FAF6}
.fisc-off{opacity:.7}
.fisc-gris{background:var(--bg);border:0}.fisc-vert{background:#F2FAF6;border:1.5px solid #9FD7BD}
.fisc-badge{position:absolute;top:-11px;right:14px;background:var(--go);color:#fff;font-size:12px;font-weight:800;padding:3px 10px;border-radius:999px}
.fisc-eco{margin:12px 0 0;font-size:15px;color:var(--go-2);background:var(--go-50);border-radius:8px;padding:10px 14px}
.fisc-regles{margin:12px 0 0;padding-left:18px;font-size:14px;display:flex;flex-direction:column;gap:6px;color:var(--ink-2)}
.fisc-reno{display:flex;gap:8px;align-items:flex-start;cursor:pointer}.fisc-reno input{width:18px;height:18px;flex:none;margin:2px 0 0;accent-color:var(--go)}
.fisc-cases{margin-top:18px;border-top:1px solid var(--line-2);padding-top:14px}
.fisc-cases .esp-actions{margin-top:14px}
@media (max-width:640px){.fisc-l{grid-template-columns:minmax(0,1fr) 120px}.fisc-n{grid-column:1/-1}}
/* Échéance et congé */
.cg-dates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 8px;align-items:stretch}
.cg-dates .inf{display:flex;flex-direction:column;gap:4px}.cg-dates .inf strong{margin-top:auto}
.cg-dates .inf b.neg{color:var(--danger,#B42318)}
.cg-deux{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.cg-carte{display:flex;flex-direction:column;gap:6px;text-align:left;padding:18px 20px;border:1.5px solid var(--line);border-radius:14px;background:#fff;cursor:pointer;font:inherit;color:var(--ink)}
.cg-carte:hover,.cg-carte:focus-visible{border-color:var(--go);box-shadow:0 0 0 3px var(--go-50)}
.cg-carte strong{font-size:17px;color:var(--navy)}.cg-carte span{font-size:14px;color:var(--muted)}
.cg-ok{border:2px solid #A7DCC2;background:#F2FBF6}
.cg-h3{font-size:16px;color:var(--navy);margin:22px 0 10px;padding-top:16px;border-top:1px solid var(--line-2)}
.cg-h3:first-of-type{border-top:0;padding-top:0}
.cg-choix{display:flex;flex-wrap:wrap;gap:8px}
.cg-opt{display:flex;gap:10px;align-items:flex-start;flex:1 1 220px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer;background:#fff}
.cg-opt.on{border-color:var(--go);background:var(--go-50)}
.cg-opt input{margin-top:3px;accent-color:var(--go);flex:none}
.cg-opt span{display:flex;flex-direction:column;gap:2px}.cg-opt strong{font-size:15px}.cg-opt small{font-size:13px;color:var(--muted)}
.cg-q{margin:12px 0}.cg-q>p{margin:0 0 6px;display:flex;flex-direction:column;gap:2px}.cg-q>p small{color:var(--muted);font-size:13px;font-weight:400}
.cg-q .cg-opt{flex:0 1 auto;padding:8px 14px}
.cg-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin:10px 0}
.cg-grille .field:has(textarea){grid-column:1/-1}
.cg-protege{margin-top:14px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#FAFBFD}
.cg-sous{margin:0;font-weight:700;color:var(--navy)}
.cg-plafond{margin:12px 0;padding:12px 14px;background:#fff;border:1px dashed var(--line);border-radius:10px}
.cg-case{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:var(--ink-2)}.cg-case input{margin-top:3px;accent-color:var(--go)}
.cg-chiffre{margin:10px 0 0}.cg-chiffre small{color:var(--muted)}
.cg-liste{margin:0 0 12px;padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:15px}
.cg-source{margin-top:14px}
#f-conge .notice{margin:10px 0}
@media (max-width:760px){.cg-dates{grid-template-columns:repeat(2,minmax(0,1fr))}.cg-deux,.cg-grille{grid-template-columns:1fr}}
.esp-dialog-mail{width:min(760px,calc(100vw - 24px))}
.apercu-mail{width:100%;height:min(68vh,720px);border:1px solid var(--line);border-radius:10px;background:#F4F6FA}
.mail-fermer{position:static;background:var(--bg);color:var(--navy);flex:none}
.mail-fermer:hover,.mail-fermer:focus-visible{background:var(--line-2)}
/* Cartes logements */
.lg-cartes{align-items:stretch}
.lg-carte{display:flex;flex-direction:column;gap:14px;padding:20px 22px;text-decoration:none;color:var(--ink);transition:border-color .15s,box-shadow .15s,transform .15s}
.lg-carte:hover{border-color:var(--navy);color:var(--ink);box-shadow:0 8px 22px rgba(0,32,91,.10);transform:translateY(-1px)}
.lg-tete{display:flex;justify-content:space-between;align-items:center;gap:8px}
.lg-etat{font-size:13px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap}
.lg-loue{background:var(--go-50);color:var(--go-2)}.lg-libre{background:#FFF3D6;color:#7A5200}.lg-bientot{background:#E8EEFB;color:var(--navy)}
.lg-nom h2{margin:0}.lg-nom p{margin:2px 0 0;color:var(--muted);font-size:14.5px;line-height:1.4}
.lg-faits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border:1px solid var(--line-2);border-radius:10px;overflow:hidden}
.lg-faits div{padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.lg-faits div+div{border-left:1px solid var(--line-2)}
.lg-faits dt{font-size:12px;color:var(--muted);font-weight:600}
.lg-faits dd{margin:0;font-size:16px;font-weight:700;color:var(--ink);min-height:24px;display:flex;align-items:center}
.lg-dpe{display:inline-grid;place-items:center;width:26px;height:24px;border-radius:5px;font-size:14px;font-weight:800}
.lg-loc{margin:0;display:flex;flex-direction:column;gap:2px}.lg-loc span{font-size:12px;color:var(--muted);font-weight:600}.lg-loc strong{font-size:15px}
.lg-btn{margin-top:auto;align-self:flex-start}
.lg-carte:hover .lg-btn{border-color:var(--navy);background:var(--navy);color:#fff}
.lg-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lg-faits dd{font-size:15px}
.onglets{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.onglets::-webkit-scrollbar{display:none}.onglets a{flex:none;padding:9px 12px}
/* Relevés de compteurs */
.cpt{padding:0;overflow:hidden}
.cpt-tete{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:18px 22px;border-bottom:1px solid var(--line-2)}
.cpt-titre{display:flex;gap:12px;align-items:center}.cpt-titre .muted{margin:2px 0 0;font-size:14px}
.cpt-ico{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:10px;flex:none}
.cpt-ico-s{width:28px;height:28px;border-radius:8px}.cpt-ico-s svg{width:15px;height:15px}
.cpt-eau{background:#E3EEFF;color:#1D5FD1}.cpt-ec{background:#FDE8E3;color:#B4361E}.cpt-elec{background:#FFF3D6;color:#8A5A00}.cpt-gaz{background:#FFE9D6;color:#B4540A}.cpt-autre{background:var(--bg);color:var(--navy)}
.cpt-vide{margin:0;padding:22px;color:var(--muted)}
.cpt-resume{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;padding:16px 22px}
.cpt-carte{display:flex;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line-2);border-radius:12px}
.cpt-carte>div{display:flex;flex-direction:column}.cpt-carte span{font-size:13px;color:var(--muted);font-weight:600}.cpt-carte strong{font-size:18px;color:var(--ink)}.cpt-carte small{font-size:12.5px;color:var(--muted)}
.cpt .table-box{margin:0 22px 18px}
.cpt-table td{vertical-align:middle}
.cpt-type{display:inline-flex;align-items:center;gap:8px;font-weight:700}
.cpt-table tr:not(.cpt-calc-l) td{border-bottom:0}
.cpt-calc-l td{padding-top:0}
.cpt-calc{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;border-radius:10px;background:var(--bg);font-size:14px;color:var(--ink-2)}
.cpt-calc>span:first-child{font-weight:800;color:var(--muted)}.cpt-calc em{color:var(--muted)}
.cpt-calc-alerte{background:#FFF3D6;color:#7A5200}
.cpt-btn{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:9px;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer}
.cpt-btn:hover{border-color:var(--navy)}.cpt-suppr{color:#B42318}.cpt-suppr:hover{border-color:#B42318}
.cpt-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cpt-val{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
#f-cpt{display:flex;flex-direction:column;gap:12px}
@media (max-width:640px){.cpt-tete,.cpt-resume{padding-left:16px;padding-right:16px}.cpt .table-box{margin:0 16px 16px}.cpt-2{grid-template-columns:1fr}}
.cpt-2{align-items:end}
.cpt-periode{border:0;margin:0;padding:0;min-width:0}.cpt-periode legend{padding:0;margin-bottom:6px;font-weight:700;font-size:15px}
/* Calendrier */
.cal-filtres{padding:14px 16px;display:flex;flex-direction:column;gap:12px}
.cal-ligne{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.cal-sel{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px}.cal-sel select{min-width:230px;font-weight:400}
.cal-per{display:flex;gap:4px;background:var(--bg);padding:4px;border-radius:10px}
.cal-per button{min-height:36px;padding:0 14px;border:0;border-radius:8px;background:transparent;font:inherit;font-size:14px;font-weight:700;color:var(--ink-2);cursor:pointer}
.cal-per button[aria-pressed="true"]{background:var(--navy);color:#fff}
.cal-types{display:flex;gap:6px;flex-wrap:wrap}
.cal-type{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 12px;border-radius:999px;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;border:1.5px solid currentColor;background:var(--cal-bg);color:var(--cal-c)}
.cal-type i{width:10px;height:10px;border-radius:50%;background:currentColor}
.cal-type span{font-weight:600;opacity:.75}
.cal-type[aria-pressed="false"]{border-style:dashed;background:#fff;color:#6B7686}
.cal-loyer{--cal-c:#047857;--cal-bg:#E6F5EE}.cal-bail{--cal-c:#00205B;--cal-bg:#E8EEFB}.cal-loc{--cal-c:#7A3FB0;--cal-bg:#F1E8FA}.cal-charges{--cal-c:#8A5200;--cal-bg:#FFF3D6}.cal-dem{--cal-c:#B42318;--cal-bg:#FDE3E1}
.cal-retard{padding:16px 18px;background:#FDF5F4;border-color:#F3C7C2;display:flex;flex-direction:column;gap:10px}.cal-retard .esp-h2{color:#B42318;font-size:16px}
.cal-r{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.cal-r>div{display:flex;flex-direction:column}.cal-r span{font-size:13.5px;color:var(--ink-2)}
.cal-mois{display:flex;flex-direction:column;gap:8px}
.cal-mois .esp-h2 span{font-size:13.5px;font-weight:500;color:var(--muted);margin-left:6px}
.cal-liste{padding:0;overflow:hidden}
.cal-ev{display:grid;grid-template-columns:52px 40px minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 18px;border-top:1px solid var(--line-2);text-decoration:none;color:var(--ink)}
.cal-liste .cal-ev:first-child{border-top:0}
.cal-ev-ok{opacity:.65}
.cal-date{display:flex;flex-direction:column;align-items:center;line-height:1.1}.cal-date strong{font-size:21px;color:var(--navy)}.cal-date span{font-size:12px;color:var(--muted);text-transform:uppercase}
.cal-ico{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;font-weight:800;font-size:15px;background:var(--cal-bg);color:var(--cal-c)}
.cal-txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.cal-t1{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cal-t1 strong{font-size:15.5px}
.cal-t2{font-size:13.5px;color:var(--muted);line-height:1.45}
.cal-st{font-size:12px;font-weight:700;padding:2px 9px;border-radius:999px;background:#EEF1F5;color:var(--muted);white-space:nowrap}
.cal-st-proche{background:#FFF3D6;color:#7A5200}.cal-st-fort{background:#FDE3E1;color:#B42318}.cal-st-auto,.cal-st-ok{background:var(--go-50);color:var(--go-2)}
.cal-ev .btn{white-space:nowrap}
.cal-bord .cal-ev{padding:10px 0;grid-template-columns:48px 38px minmax(0,1fr)}
.cal-bord .cal-ev>span:last-child{display:none}
@media (max-width:760px){.cal-ev{grid-template-columns:44px minmax(0,1fr);padding:12px 14px}.cal-ev .cal-ico{display:none}.cal-ev>.btn,.cal-ev>span:last-child{grid-column:2;justify-self:start}.cal-sel{width:100%}.cal-sel select{flex:1;min-width:0}}
.em-pager{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.em-num{align-self:center;font-size:14px;color:var(--muted);padding:0 6px}
.em-date{white-space:nowrap}.em-date small{display:block;color:var(--muted);font-size:12.5px}
.em-table td{vertical-align:top}
.esp-carte>.esp-actions:last-child{margin-top:auto}
/* Logo du propriétaire */
.logo-depot{width:100%;min-height:150px;border:2px dashed #A9B4C6;background:#FBFCFE;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font:inherit;color:var(--ink);cursor:pointer;padding:16px;text-align:center}
.logo-depot:hover,.logo-depot.sur{border-color:var(--navy);background:#F1F5FC}
.logo-depot strong{font-size:16px;color:var(--navy)}.logo-depot span{font-size:13.5px;color:var(--muted)}
.logo-depot-i{width:34px;height:34px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300205B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='3'/%3E%3Ccircle cx='9' cy='9' r='2'/%3E%3Cpath d='M21 15l-5-5L5 21'/%3E%3C/svg%3E")}
.logo-grille{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:24px;align-items:start}
.logo-apercu{display:flex;flex-direction:column;gap:6px}.logo-apercu span{font-size:12.5px;color:var(--muted);font-weight:600}
.logo-apercu div{border:1px solid var(--line-2);border-radius:12px;height:130px;display:grid;place-items:center;background:#fff;padding:12px}
.logo-apercu img{max-width:100%;max-height:100px;object-fit:contain}
.logo-cote{display:flex;flex-direction:column;gap:14px}.logo-taille{display:flex;flex-direction:column;gap:6px}
.logo-taille .seg{display:inline-flex;align-self:flex-start;gap:4px;background:#F4F6FA;border:1px solid var(--line);padding:3px;border-radius:10px}
.logo-taille .seg button{min-height:38px;padding:0 16px;border:0;border-radius:8px;background:transparent;font:inherit;font-weight:700;color:var(--ink);cursor:pointer}
.logo-taille .seg button[aria-pressed="true"]{background:var(--navy);color:#fff}
.esp-carte-nom{display:flex;align-items:center;gap:10px}.carte-logo{height:34px;max-width:90px;object-fit:contain}
@media (max-width:640px){.logo-grille{grid-template-columns:1fr}}
/* Formules : économie annuelle, ce que couvre la formule, note, FAQ */
.tarif-plus{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-height:48px}
.tarif-plus small{font-size:13px;color:var(--go);font-weight:700}
.tarif-promo{font-size:13px;font-weight:800;padding:3px 10px;border-radius:8px;background:#DDF3E8;color:#046C4E}
.tarif-quoi{margin:2px 0 0;font-size:14px;font-weight:700;color:var(--ink);min-height:2.6em}
.tarif-sous{font-size:13.5px}
.abo-note{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:-4px 0 8px;font-size:15px}
.abo-note span:last-child{color:var(--muted)}.abo-etoiles{color:#F5B301;font-size:18px;letter-spacing:1px}
.abo-faq details{border-top:1px solid var(--line-2)}
.abo-faq summary{list-style:none;cursor:pointer;min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700;font-size:15.5px;color:var(--ink)}
.abo-faq summary::-webkit-details-marker{display:none}
.abo-faq summary::after{content:"+";font-size:22px;color:var(--navy);font-weight:500}
.abo-faq details[open] summary::after{content:"−"}
.abo-faq details p{margin:0 0 14px;color:var(--ink-2);font-size:14.5px;max-width:860px}
/* Fenêtre après l'ajout d'une location au-delà de la 1re */
.seconde{max-width:560px;padding:28px;display:none;position:relative}
.seconde[open]{display:flex;flex-direction:column;gap:14px}
.sec-x{position:absolute;top:10px;right:12px;width:40px;height:40px;border:0;background:none;font-size:24px;color:var(--muted);cursor:pointer}
.sec-ok{width:48px;height:48px;border-radius:50%;background:var(--go) var(--coche) center/22px no-repeat}
.seconde h2{margin:0;font-size:22px}
.seconde p{margin:0}
.sec-offre{border:2px solid var(--go);border-radius:12px;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.sec-offre div{display:flex;flex-direction:column;gap:2px}.sec-offre span{font-size:14px;color:var(--muted)}.sec-offre small{font-size:13px;font-weight:800;color:#046C4E}
.sec-plus-tard{align-self:center;min-height:44px;padding:0 16px;border:0;background:none;font:inherit;font-weight:700;color:var(--navy);text-decoration:underline;cursor:pointer}

/* ═══ Mode découverte : location non incluse, testée sans rien enregistrer ni envoyer ═══ */
.tag-dec{background:#E6F0FF;color:#1D4ED8}
.bandeau-dec{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;border-radius:10px;background:#EFF5FF;border:1.5px solid #93B4F5;font-size:14.5px}
.bandeau-dec>span:nth-child(2){flex:1 1 320px}
.bd-i{width:28px;height:28px;border-radius:50%;background:#1D4ED8;color:#fff;display:grid;place-items:center;font:800 15px/1 Georgia,serif;flex:none}
.pw-etiquette-dec{color:#1D4ED8;background:#E6F0FF}
.tag-lien{cursor:pointer;text-decoration:none}
.tag-lien:hover,.tag-lien:focus-visible{background:#D3E3FF;text-decoration:underline;text-underline-offset:2px}
.prepare{display:flex;gap:12px;align-items:flex-start;background:var(--go-50);border:1px solid #A7F3D0;border-radius:12px;padding:12px 14px;margin:0 0 12px;color:#064E3B;font-size:14.5px}
.prepare .ok{width:26px;height:26px;border-radius:50%;background:var(--go);color:#fff;display:grid;place-items:center;font-weight:800;flex:none}
.prepare small{font-size:13px}
.tarif-pour{margin:0 0 8px;text-align:center;font-size:13.5px;font-weight:700;color:var(--go-2)}
.dec-dialog{width:min(860px,calc(100vw - 24px));display:flex;flex-direction:column;gap:12px}
.dec-dialog:not([open]){display:none}
.dec-tete{align-items:flex-start}
.dec-sous{display:inline-block;margin-top:4px;font-size:12.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#1D4ED8;background:#E6F0FF;padding:3px 10px;border-radius:999px}
.dec-onglets{display:flex;gap:6px;flex-wrap:wrap}
.dec-onglets button{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:7px 14px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;color:var(--ink)}
.dec-onglets button[aria-pressed="true"]{border-color:var(--navy,#00205B);background:var(--navy,#00205B);color:#fff}
.dec-papier{width:100%;height:min(58vh,640px);border:1px solid var(--line);border-radius:10px;background:#fff}
.dec-mail-de{margin:0 0 6px;font-size:13px;color:var(--muted)}
.dec-info{display:flex;gap:10px;align-items:flex-start;margin:0;padding:10px 12px;border-radius:10px;background:#F7F9FC;font-size:14px}
.dec-pied{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.dec-pied .esp-actions{margin:0}
.dec-rassure{font-size:13.5px;color:var(--muted)}
.dec-rassure::before{content:"✓ ";color:var(--go-2);font-weight:800}
.dec-note{margin:0;padding:10px 12px;border-radius:10px;background:#EFF5FF;font-size:14px;color:#1E3A8A}
.dec-pret{width:min(520px,calc(100vw - 24px));gap:14px}
.cel-dec{background:#EFF5FF;color:#1D4ED8;border:1px dashed #93B4F5}
.tag-mini{font-size:11px;padding:1px 7px;font-style:normal;display:inline-block;margin-top:3px}
/* Locations terminées : masquer de la liste */
.lg-fin{display:flex;flex-direction:column;gap:6px}
.lg-fin .lg-carte{flex:1}
.lg-masquer{align-self:flex-end;font-size:13.5px;color:var(--muted)}
.lg-masquees{margin:14px 0 0}
.lg-cartes-masquees .lg-carte{opacity:.7}
.bg-nw,.bg-prix strong{white-space:nowrap}
/* Location incomplète : loyer, date de début ou locataire manquant */
.bandeau-manque{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;border-radius:10px;background:#FFF8E6;border:1.5px solid #E5A100;font-size:14.5px}
.bandeau-manque>span:nth-child(2){flex:1 1 320px}
.bandeau-manque .bd-i{background:#B7791F}
/* Arrivée depuis le générateur : bail prêt + code, en un seul bloc */
.esp-attente.attente-code{max-width:760px;margin:0 auto;gap:14px;padding:28px}
.attente-code>.tag{align-self:flex-start}
.attente-code .esp-h1{font-size:26px}
.code-dans-attente{box-shadow:none;border:0;padding:0;margin:0;max-width:none;background:none;gap:12px}
.code-dans-attente>.tag,.code-dans-attente>.esp-h1{display:none}
.code-dans-attente .code-texte{margin:0;font-size:15.5px}
.code-dans-attente .field{align-items:flex-start}
.code-dans-attente .esp-code-input{max-width:300px}
.code-dans-attente .esp-actions .btn-ghost{border:0;background:none;text-decoration:underline;padding:0 6px;min-height:auto;font-weight:600}
.code-dans-attente .help{margin:0}
.attente-rassure{display:flex;flex-wrap:wrap;gap:8px 18px;margin:4px 0 0;padding-top:14px;border-top:1px solid var(--line-2);font-size:13.5px;color:var(--go-2);font-weight:700}
.attente-liens{margin:0;font-size:13.5px}.attente-liens a{color:var(--muted)}
.esp-attente .code-dans-attente.card.panel{padding:0;border:0;box-shadow:none}
.attente-code .esp-resume{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:640px){.attente-code .esp-resume{grid-template-columns:repeat(2,minmax(0,1fr))}.esp-attente.attente-code{padding:20px 16px}.attente-code .esp-h1{font-size:22px}}
/* Résumé du bail en attente : libellés sur une ligne, valeurs alignées */
.esp-resume>div{display:flex;flex-direction:column;justify-content:flex-start;gap:2px;min-width:0}
.esp-resume>div>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}
.esp-resume>div>strong{line-height:1.35}
/* Connexion : présentation à gauche, formulaire à droite, même hauteur */
.esp-connexion{align-items:stretch}
.esp-connexion>.esp-promo.card{padding:24px 26px;gap:14px}
@media (min-width:761px){.esp-connexion>form{order:2}.esp-connexion>.esp-promo{order:1}}
.abo-compte{line-height:1.55}
.abo-liste{margin:4px 0 6px;padding-left:20px}.abo-liste li{margin:2px 0}
.tarif-gratuit{background:#fff!important;border:1.5px solid var(--line)!important}
.tarif-gratuit .tag{background:var(--go-50);color:var(--go-2)}
/* Logements : cartes un peu moins hautes */
.lg-cartes .lg-carte{gap:10px;padding:16px 20px}
.lg-cartes .lg-faits div{padding:8px 12px}
.lg-cartes .lg-tete{margin-bottom:-2px}
.lg-cartes .lg-btn{margin-top:4px}
/* Locataires : tableau plus lisible */
.esp-table .loc-tel{display:block;white-space:nowrap;font-size:13px;color:var(--muted);font-weight:500;margin-top:2px}
.esp-table td .lien-nom strong{font-size:15.5px}
.tag-comp{background:#FFF1CC;color:#7A5200;text-decoration:none}
/* Formules annuelles affichées par mois : prix au mois barré, montant facturé par an */
.tarif-barre{opacity:.7}
.tarifs .tarif-sous{min-height:2.9em;line-height:1.45}
.tarif-sous strong{color:var(--ink-2)}

.grille-unite{font-size:13px;margin-left:6px}
.grille .cel-b{font-size:12px;padding:0 1px;letter-spacing:-.01em}
.grille tr.tot td small{font-size:10.5px;white-space:normal;overflow:visible;line-height:1.25}
.profil-bandeau{margin-bottom:16px}
.tag-conseil{display:inline-block;background:#FDE7A9;color:#7A4B00;font-size:12px;font-weight:800;padding:2px 8px;border-radius:999px;margin-right:6px;vertical-align:1px}
.lien-discret{align-self:flex-start;background:none;border:0;padding:0;margin-top:6px;font:inherit;font-size:13px;color:var(--muted);text-decoration:underline;cursor:pointer}
.lien-discret:hover{color:var(--navy)}
.encart-avis-act{align-items:center}
.ea-note{display:flex;flex-direction:column;align-items:center}
.ea-etoiles{display:flex;gap:0}
.ea-etoiles button{border:0;background:none;padding:0 3px;width:40px;font-size:36px;line-height:1;color:#F6C64E;cursor:pointer;transition:color .1s,transform .12s;text-shadow:0 1px 0 #D99A00}
.ea-etoiles:hover button{color:#F59E0B}.ea-etoiles button:hover~button{color:#F3DFA2;text-shadow:none}
.ea-etoiles button:hover{transform:scale(1.2)}
.ea-aide{margin-top:4px;min-height:1.3em;color:var(--muted);font-size:13px;font-weight:600;line-height:1.3;text-align:center}
.ea-aide.ea-aide-on{color:#9A5B00;font-weight:800}
.ea-etoiles button:focus-visible{outline:3px solid #9DB7F5;outline-offset:1px;border-radius:6px}
.encart-avis .ea-plus-tard{align-self:flex-start;background:none;border:0;padding:0;margin-top:2px;font:inherit;font-size:13px;color:var(--muted);text-decoration:underline;cursor:pointer}
.encart-avis .ea-plus-tard:hover{color:var(--navy)}
.ea-etoiles button{font-size:32px}
.ea-aide{margin-top:0}
.card.panel.encart-avis{padding:12px 20px}
.encart-avis>div:first-child{gap:1px}
.card.panel.encart-avis{display:grid!important;grid-template-columns:1fr auto;grid-template-areas:"texte note" "lien note";align-items:center;column-gap:24px;row-gap:2px}
.encart-avis>div:first-child{grid-area:texte}.encart-avis .encart-avis-act{grid-area:note}.encart-avis .ea-plus-tard{grid-area:lien;margin-top:0}
@media (max-width:760px){.card.panel.encart-avis{grid-template-columns:1fr;grid-template-areas:"texte" "note" "lien";row-gap:8px}.encart-avis .encart-avis-act{justify-content:flex-start}}
.encart-avis .ea-plus-tard{justify-self:start}
.encart-avis .ea-titre{font-size:13.5px;font-weight:800;color:var(--navy);margin-bottom:2px}
.encart-avis>div:first-child span{white-space:normal}
@media (max-width:760px){.ea-note{align-items:flex-start}}
.card.panel.encart-avis{position:relative;grid-template-areas:"texte note";width:100%;max-width:none;justify-self:stretch;grid-column:1/-1;padding:14px 56px 14px 20px;box-sizing:border-box;align-items:center}
.encart-avis .encart-avis-act{align-self:center;justify-content:flex-end}
.encart-avis .ea-note{align-items:center;gap:2px}
.encart-avis .ea-titre{min-width:270px;text-align:center;margin:0}
.encart-avis .ea-titre.ea-titre-on{color:#9A5B00}
.encart-avis .ea-etoiles{justify-content:center}
@media (max-width:760px){.card.panel.encart-avis{grid-template-areas:"texte" "note";padding:14px 40px 14px 14px}.encart-avis .encart-avis-act{justify-content:flex-start}.encart-avis .ea-note{align-items:flex-start}.encart-avis .ea-titre{text-align:left;min-width:0}}

/* Page Documents : onglets, liste alignée, tableau des états des lieux, modèles et lettres */
.dc-onglets{margin:0 0 14px}
.dc-onglets a{flex:1 1 auto;text-align:center}
.dc-onglets a small{font-weight:600;opacity:.75;margin-left:6px;font-size:13px}
.dc-aide{font-size:14px;color:var(--muted);margin:0 0 14px}
.dc-outils{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.dc-outils .dc-q{flex:1 1 240px;min-width:0}
.dc-outils select{flex:0 1 220px;min-width:0}
.dc-liste .dc-ligne{display:grid;grid-template-columns:38px minmax(0,1fr) 104px 86px 92px;gap:12px;align-items:center;padding:10px 4px;border-top:1px solid var(--line-2)}
.dc-liste>.dc-ligne:first-child{border-top:0}
.dc-ico{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:12px;font-weight:800;letter-spacing:.02em}
.dc-i-q{background:var(--go-50);color:var(--go-2)}.dc-i-a{background:var(--navy-50);color:var(--navy)}.dc-i-r{background:#FDE3E1;color:var(--err)}.dc-i-b{background:#FFF1CC;color:#8A5300}.dc-i-p{background:#F3E8FF;color:#6B21A8}.dc-i-w{background:var(--line-2);color:var(--ink-2)}
.dc-t{min-width:0}
.dc-t strong{display:block;color:var(--navy);font-size:15px;line-height:1.3}
.dc-t span{display:block;font-size:13.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dc-t .dc-date-m{display:none}
.dc-date{font-size:13.5px;color:var(--muted);white-space:nowrap}
.dc-c{display:flex}
.dc-c .btn{width:100%;justify-content:center}
.dc-acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}
.dc-table td{vertical-align:middle}
.dc-table th:first-child{width:34%}
.dc-loc{display:block;color:var(--navy)}
.dc-sous{display:block;font-size:13.5px;color:var(--muted)}
.dc-edl{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.dc-h3{font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--go);margin:20px 0 8px}
.dc-aide+.dc-h3,.dc-rub>div:first-child .dc-h3,.dc-rub .dc-h3:first-child{margin-top:0}
.dc-grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.dc-mod{border:1.5px solid var(--line-2);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;background:#fff}
.dc-mod strong{color:var(--navy);font-size:14.5px;line-height:1.3}
.dc-mod span{font-size:13px;color:var(--muted)}
.dc-mod .dc-acts{padding-top:4px}
.dc-rub{columns:2;column-gap:22px}
.dc-rub>div{break-inside:avoid;margin-bottom:16px}
.dc-lettre{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:9px;color:var(--navy);text-decoration:none;font-weight:600;font-size:14px;line-height:1.3;border:1.5px solid var(--navy);margin-bottom:7px;background:#fff}
.dc-lettre:hover{background:var(--navy-50)}
.dc-lettre em{flex:none;font-style:normal;font-size:12px;font-weight:800;color:#1D4ED8;background:#E6F0FF;border-radius:6px;padding:2px 7px}
.dc-lettre.verrou em{display:none}
@media (max-width:760px){
  .onglets.dc-onglets{display:grid;grid-template-columns:1fr 1fr;gap:5px;overflow:visible;-webkit-mask-image:none;mask-image:none}
  .onglets.dc-onglets a{padding:9px 8px;font-size:14px;flex:none}
  .dc-outils select{flex:1 1 100%}
  .dc-liste .dc-ligne{grid-template-columns:38px minmax(0,1fr) 90px;grid-template-areas:"i t o" "i t e";row-gap:6px}
  .dc-liste .dc-ico{grid-area:i;align-self:start}
  .dc-liste .dc-t{grid-area:t}
  .dc-liste .dc-date{display:none}
  .dc-t .dc-date-m{display:block}
  .dc-liste .dc-c:nth-of-type(3){grid-area:o}
  .dc-liste .dc-c:nth-of-type(4){grid-area:e}
  .dc-liste .dc-c .btn{min-width:84px}
  .dc-grille{grid-template-columns:1fr 1fr}
  .dc-rub{columns:1}
  .dc-table thead{display:none}
  .dc-table,.dc-table tbody,.dc-table tr,.dc-table td{display:block;width:100%}
  .dc-table tr{border-top:1px solid var(--line-2);padding:10px 0}
  .dc-table tr:first-child{border-top:0}
  .dc-table td{border:0;padding:6px 0}
  .dc-table td[data-l="Entrée"]::before,.dc-table td[data-l="Sortie"]::before{content:attr(data-l);display:block;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}
}
@media (max-width:340px){.dc-grille{grid-template-columns:1fr}}

/* Avenant au bail : bouton « Nouveau » et assistant en 3 étapes */
.btn-doc-av{border-color:var(--go);background:#F3FBF7}
.btn-doc-av strong{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.btn-doc .tag-nouveau,.tag-nouveau{color:#fff;font-size:11px;font-weight:800;color:#fff;background:#E85D04;border-radius:999px;padding:1px 8px;letter-spacing:.02em}
.av-dialog{width:min(820px,calc(100vw - 24px));padding:0}
.av-tete{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 22px 6px}
.av-tete .esp-h2{margin:0}.av-tete .help{margin:2px 0 0}
.av-dialog .be-fermer{position:static;flex:none}
.av-pas{display:flex;gap:8px;padding:6px 22px 14px;border-bottom:1px solid var(--line-2)}
.av-pas span{flex:1;font-size:12.5px;font-weight:700;color:var(--muted);border-top:3px solid var(--line-2);padding-top:6px}
.av-pas span.on{color:var(--navy);border-color:var(--navy)}.av-pas span.ok{color:var(--go);border-color:var(--go)}
.av-dialog>.notice,.av-dialog>.av-q,.av-dialog>.av-choix,.av-dialog>.av-inutile,.av-dialog>.av-bloc,.av-dialog>.av-communs,.av-dialog>.av-apercu{margin-left:22px;margin-right:22px}
.av-dialog>.notice{margin-top:14px}
.av-q{font-weight:700;color:var(--navy);margin-top:16px;margin-bottom:10px}.av-q .muted{font-weight:400}
.av-choix{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.av-ch{display:flex;gap:10px;align-items:flex-start;border:1.5px solid var(--line);border-radius:11px;padding:11px 12px;background:#fff;cursor:pointer}
.av-ch input{width:20px;height:20px;margin:1px 0 0;flex:none;accent-color:var(--navy)}
.av-ch b{display:block;color:var(--navy);font-size:14.5px;line-height:1.3}.av-ch small{display:block;font-size:12.8px;color:var(--muted);line-height:1.35;margin-top:2px}
.av-ch:has(input:checked){border-color:var(--navy);background:var(--navy-50)}
.av-ch.av-off{opacity:.6;cursor:not-allowed;background:var(--bg)}
.av-inutile{margin-top:14px;background:var(--bg);border-radius:11px;padding:12px 14px;font-size:13.5px}
.av-inutile strong{color:var(--navy)}.av-inutile ul{margin:6px 0 0;padding-left:18px}.av-inutile li{margin:3px 0}
.av-pied{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 22px;margin-top:18px;border-top:1px solid var(--line-2);background:#FAFBFD;position:sticky;bottom:0}
.av-bloc{border:1px solid var(--line-2);border-radius:12px;padding:12px 16px 14px;margin-top:14px;min-width:0}
.av-bloc legend{font-weight:800;color:var(--navy);font-size:15.5px;padding:0 6px}
.av-bloc .esp-form{margin-top:4px}
.av-lab{display:block;font-size:14px;font-weight:700;margin-bottom:6px}
.av-radios{display:flex;gap:8px;flex-wrap:wrap}
.av-radios label{display:inline-flex;align-items:center;gap:7px;border:1.5px solid var(--line);border-radius:999px;padding:7px 13px;font-size:14px;cursor:pointer;background:#fff}
.av-radios label:has(input:checked){border-color:var(--navy);background:var(--navy-50);color:var(--navy);font-weight:700}
.av-radios input{accent-color:var(--navy);margin:0}
.av-maj{display:flex;gap:9px;align-items:flex-start;margin-top:10px;font-size:13.5px;cursor:pointer}
.av-maj input{width:18px;height:18px;margin:1px 0 0;flex:none;accent-color:var(--go)}
.av-communs{margin-top:16px}
.av-apercu{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px;margin-top:16px}
.av-papier{width:100%;height:520px;border:1px solid var(--line);border-radius:8px;background:#E9EDF3}
.av-cote{display:flex;flex-direction:column;gap:10px}
.av-cote .btn{justify-content:center;width:100%}
.av-recap{font-size:13.5px;background:var(--bg);border-radius:11px;padding:12px 14px}.av-recap b{color:var(--navy)}.av-recap ol{margin:6px 0 0;padding-left:18px}.av-recap li{margin:3px 0}
.dc-signe{display:inline;font-size:13px;margin-top:2px}
.dc-t strong .pst{display:inline-flex;font-size:11.5px;padding:1px 8px;margin-left:4px;vertical-align:1px}
@media (max-width:640px){.av-choix,.av-apercu{grid-template-columns:1fr}.av-papier{height:420px}.av-tete,.av-pas,.av-pied{padding-left:16px;padding-right:16px}.av-dialog>.notice,.av-dialog>.av-q,.av-dialog>.av-choix,.av-dialog>.av-inutile,.av-dialog>.av-bloc,.av-dialog>.av-communs,.av-dialog>.av-apercu{margin-left:16px;margin-right:16px}}

/* Documents › Baux & Annexes : carte « Avenant au bail » (générateur) */
.card.panel.dc-av{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px;align-items:start;border-color:#9FD8BC}
.dc-av .esp-h2{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0 4px}
.dc-av .muted{margin:0}
.dc-av-b{display:flex;flex-direction:column;gap:8px}
@media (max-width:760px){.card.panel.dc-av{grid-template-columns:1fr}}

/* Retour de paiement : confirmation, puis action préparée en mode découverte */
.pret-recap p{margin:0 0 8px}.pret-recap strong{color:var(--navy)}
.pret-prep{border-top:1px solid var(--line-2);padding-top:12px}
.pret-prep-t{margin:0 0 8px;font-weight:700;color:var(--navy)}

/* Tableaux de loyers : boutons alignés d'une ligne à l'autre (emplacements fixes) */
.act-slots{display:inline-grid;grid-template-columns:auto 88px 34px 34px;column-gap:4px;align-items:center;justify-items:end;vertical-align:middle}
.act-slots .as-1{display:flex;gap:4px;justify-content:flex-end;min-width:96px}
.act-slots .as-1 .btn{min-width:96px;justify-content:center;padding:0 10px}
.act-slots .as-2 .btn{width:88px;justify-content:center;padding:0 8px}
.act-slots .as-3 .btn,.act-slots .as-4 .btn{width:34px;padding:0;justify-content:center}
.esp-table td.act .act-slots .btn{margin:0}
.act-recu{margin-top:4px;font-size:13px}.act-recu .lien-btn{font-size:13px}
@media (max-width:1180px) and (min-width:761px){.esp-table td:has(>.tag),.esp-table td:has(>.pst){white-space:normal}.esp-table td>.tag,.esp-table td>.pst{white-space:normal;line-height:1.25}}
@media (max-width:1180px){.act-slots{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.act-slots>span:empty{display:none}}
@media (max-width:760px){.act-slots{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px}.act-slots>span:empty{display:none}.act-slots .as-1 .btn{min-width:0}}

/* Bandeau de message de l'espace : informations bien visibles (envoi en cours…) */
#msg.notice-info{background:#DCE6F8;color:var(--navy);border:1px solid #9FB3D9;border-left:5px solid var(--navy);font-weight:600}
#msg.msg-attente{display:flex;align-items:center;gap:10px}
#msg.msg-attente::before{content:"";flex:none;width:16px;height:16px;border-radius:50%;border:2.5px solid #9FB3D9;border-top-color:var(--navy);animation:msg-tourne .8s linear infinite}
@keyframes msg-tourne{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){#msg.msg-attente::before{animation:none}}

/* Menu de gauche : il défile seul quand il est plus haut que l'écran (ordinateur) */
@media (min-width:861px){
  .esp-nav{align-self:flex-start;max-height:calc(100vh - 32px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#C5CEDC transparent;padding-right:4px}
  .esp-nav::-webkit-scrollbar{width:6px}.esp-nav::-webkit-scrollbar-thumb{background:#C5CEDC;border-radius:6px}
}

/* Grille des loyers : mois à venir (même couleur que la légende « À venir ») */
.cel-b.cel-avenir{background:var(--navy-50);color:var(--navy);box-shadow:none}
.cel-b.cel-futur{opacity:.85}
.grille .tot .tot-futur{display:block;color:var(--muted);font-weight:500;line-height:1.3}

/* Échéances (À venir, À faire prochainement) : date et bouton toujours à droite, l'un sous l'autre */
.ligne.ligne-ech{flex-wrap:nowrap;align-items:center}
.ligne-ech>div:first-child{flex:1 1 auto}
.ligne-ech .ligne-act{flex:none;flex-direction:column;align-items:flex-end;gap:6px}
.ligne-ech .ligne-act .btn{min-width:96px;justify-content:center}

/* Fin de la location (bas du formulaire « Modifier ») */
.fin-loc{border-color:#F3C4BF}
.btn.btn-rouge{background:var(--err);border-color:var(--err);color:#fff}
.btn.btn-rouge:hover{background:#912018;border-color:#912018;color:#fff}

/* En-tête de page : actions (année, Imprimer…) toujours à droite */
@media (min-width:761px){.esp-tete-page{flex-wrap:nowrap}.esp-tete-page>div:first-child{flex:1 1 auto;min-width:0}.esp-tete-page>.esp-actions{margin-left:auto;flex:none;flex-wrap:nowrap}}

/* Bilan : saisie à gauche, tableau à droite, 4 cartes harmonisées en bas */
.bil-haut{display:grid;grid-template-columns:1fr;gap:16px;align-items:start;margin-bottom:16px}
/* Saisie sur 2 lignes : Type · Catégorie · Montant · Date / Logement · Libellé · Ajouter */
.bil-ajout #f-mvt{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,2fr) minmax(120px,1fr) minmax(150px,1fr);grid-template-areas:"t c m d" "l x x b";gap:12px 14px;align-items:start}
.bil-ajout #f-mvt>:nth-child(1){grid-area:t}.bil-ajout #f-mvt>:nth-child(2){grid-area:c}.bil-ajout #f-mvt>:nth-child(3){grid-area:m}.bil-ajout #f-mvt>:nth-child(4){grid-area:d}
.bil-ajout #f-mvt>:nth-child(5){grid-area:l}.bil-ajout #f-mvt>:nth-child(6){grid-area:x}.bil-ajout #f-mvt>.btn{grid-area:b;align-self:end;min-height:46px}
.bil-ajout #f-mvt .field{margin:0}
.bil-ajout #mv-aide{margin:6px 0 0;font-size:12.5px}
@media (max-width:760px){.bil-ajout #f-mvt{grid-template-columns:1fr;grid-template-areas:"t" "c" "m" "d" "l" "x" "b"}}
.bil-ajout .esp-pile{gap:12px}
.bil-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bil-liste .esp-tete{flex-wrap:wrap;gap:8px 12px}
.bil-liste .help{margin:2px 0 10px}
.bil-filtres{display:flex;gap:6px;flex-wrap:wrap}
.bil-filtre{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:5px 12px;font:inherit;font-size:13.5px;font-weight:600;color:var(--ink-2);cursor:pointer}
.bil-filtre small{color:var(--muted);font-weight:600;margin-left:2px}
.bil-filtre[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}.bil-filtre[aria-pressed="true"] small{color:#C8D3E6}
.bil-table td{vertical-align:top}
.bil-table .bil-date{white-space:nowrap;color:var(--muted)}
.bil-table td small{display:block}
.bil-sens{display:block;width:max-content;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:1px 8px;margin-bottom:3px}
.bil-depense{background:#FDE3E1;color:var(--err)}.bil-recette{background:var(--go-50);color:var(--go-2)}
.bil-table td.num{white-space:nowrap;font-weight:700}
.bil-table tfoot th{text-align:right;font-weight:700;color:var(--navy);border-bottom:0;padding-top:10px}
.bil-table tfoot td{border-bottom:0;padding-top:10px}
.bil-table tfoot tr+tr th,.bil-table tfoot tr+tr td{padding-top:2px}
.bil-vide{padding:14px;border:1.5px dashed var(--line);border-radius:10px;text-align:center}
.bil-bas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}
.bil-bas>.bil-carte{margin:0;display:flex;flex-direction:column}
.bil-carte .bil-intro{margin:2px 0 6px}
.bil-sous{margin:10px 0 0;font-size:12.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--go)}
.bil-sous+.ligne{border-top:0}
.bil-carte .bil-pied{margin-top:auto;padding-top:12px}
.bil-impots{border-color:#9FD8BC;background:#F7FCF9}
.ligne-act b.neg,.kpi-neg b{color:var(--err)}
@media (max-width:760px){.bil-bas{grid-template-columns:1fr}.bil-2{grid-template-columns:1fr}}
.bil-bailleur{width:auto;max-width:220px}

/* ═══ Bloc « Bienvenue » sur la 1re location (gratuite à vie) ═══ */
.bv{position:relative;padding:0;border:1px solid #b9e2cd;border-radius:14px;overflow:hidden;box-shadow:0 4px 18px rgba(4,120,87,.08);margin-bottom:16px}
.bv-haut{display:grid;grid-template-columns:1fr auto;gap:24px;padding:24px 28px;background:linear-gradient(135deg,#effaf4 0%,#fff 70%)}
.bv-x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:24px;color:var(--muted);cursor:pointer;line-height:1;padding:4px 8px;border-radius:8px}
.bv-x:hover,.bv-x:focus-visible{background:#e7f3ed;color:var(--ink)}
.bv-salut{margin:0;color:var(--go);font-weight:700;font-size:15px}
.bv-titre{margin:4px 0 8px;font-size:26px;color:var(--navy);line-height:1.22;padding-right:20px}
.bv-vert{color:var(--go)}
.bv-sous{margin:0 0 14px;color:var(--ink);font-size:16px;line-height:1.55;max-width:660px}
.bv-garanties{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.bv-garanties li{background:#fff;border:1px solid #b9e2cd;color:var(--go-2);font-weight:600;font-size:14px;padding:5px 12px;border-radius:999px}
.bv-garanties li::before{content:"✓ ";font-weight:800}
.bv-preuve{margin:10px 0 0;font-size:13.5px;color:var(--muted)}.bv-preuve b{color:var(--ink)}
.bv-badge{align-self:center;background:#fff;border:2px solid var(--go);border-radius:14px;padding:16px 20px;min-width:230px}
.bv-lib{display:block;font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.bv-gros{display:block;font-size:34px;font-weight:800;line-height:1.1;color:var(--go)}
.bv-gros small{font-size:16px;font-weight:700;color:var(--go-2)}
.bv-badge ul{list-style:none;margin:10px 0 0;padding:10px 0 0;border-top:1px solid #e4efe9;font-size:13.5px;color:var(--ink)}
.bv-badge li{margin:3px 0}.bv-badge li::before{content:"✓ ";color:var(--go);font-weight:800}
.bv-inclus{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #e4efe9;background:#fff}
.bv-inclus div{padding:16px 20px;border-right:1px solid #e4efe9}.bv-inclus div:last-child{border-right:0}
.bv-inclus b{display:block;color:var(--navy);font-size:15px;margin-bottom:3px}
.bv-inclus span{font-size:13.5px;color:var(--muted);line-height:1.45}
.bv-bas{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 28px;background:#f7faf9;border-top:1px solid #e4efe9;flex-wrap:wrap}
.bv-etapes{display:flex;gap:8px 18px;margin:0;padding:0;list-style:none;font-size:14px;color:var(--muted);flex-wrap:wrap}
.bv-etapes li{display:flex;align-items:center;gap:7px}
.bv-etapes .n{width:24px;height:24px;flex:none;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:13px;border:2px solid var(--line);background:#fff}
.bv-etapes .fait{color:var(--go-2);font-weight:600}.bv-etapes .fait .n{background:var(--go);border-color:var(--go);color:#fff}
.bv-etapes .encours{color:var(--navy);font-weight:700}.bv-etapes .encours .n{border-color:var(--navy);color:var(--navy)}
.btn.bv-btn{flex-direction:column;gap:2px;align-items:center;font-size:18px;font-weight:800;padding:14px 30px;border-radius:12px;box-shadow:0 4px 12px rgba(4,120,87,.25);line-height:1.25;text-align:center}
.bv-btn small{display:block;font-size:13px;font-weight:500;opacity:.92}
@media (max-width:860px){
  .bv-haut{grid-template-columns:1fr;padding:22px 18px}.bv-badge{min-width:0}
  .bv-titre{font-size:22px}
  .bv-inclus{grid-template-columns:1fr 1fr}.bv-inclus div{padding:14px 16px}.bv-inclus div:nth-child(2){border-right:0}.bv-inclus div:nth-child(-n+2){border-bottom:1px solid #e4efe9}
  .bv-bas{padding:16px 18px}.btn.bv-btn{width:100%}
}
.bv .bv-sous{margin:0 0 14px}.bv .bv-salut{margin:0}.bv .bv-titre{margin:4px 0 8px}
.bv-bas .bv-btn{margin-left:auto}
/* Fiche logement à compléter (après la location complétée) */
.esp-nav .nav-info{min-width:20px;padding:0}
.lg-afaire{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;color:var(--warn,#7A5200)}
.lg-afaire .dm-badge{margin:0;min-width:20px;padding:0}
.lt-afaire{margin-top:4px;font-size:13px;white-space:nowrap}
/* « Vos documents sont prêts » (arrivée depuis « Mes documents ») */
.dp{position:relative;border:2px solid var(--go);background:linear-gradient(180deg,#ECFBF3 0%,#fff 70%);padding:18px 22px;margin-bottom:16px}
.dp-tete{display:flex;flex-direction:column;gap:4px;padding-right:28px}.dp-tete .tag{align-self:flex-start}.dp-tete .esp-h2{margin:4px 0 0}.dp-tete .muted{margin:0;font-size:14px}
.dp-liste{list-style:none;margin:10px 0 0;padding:0}
.dp-liste li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #E4E8EF;flex-wrap:wrap}
.dp-btns{display:flex;gap:8px}
/* Accueil « je cherche un locataire » : services gratuits */
.acc-services{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.acc-sv{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;text-decoration:none;color:var(--ink);transition:border-color .15s,box-shadow .15s}
.acc-sv:hover,.acc-sv:focus-visible{border-color:var(--go);box-shadow:0 4px 14px rgba(4,120,87,.12)}
.acc-sv .tag{align-self:flex-start}.acc-sv strong{color:var(--navy);font-size:15.5px}.acc-sv span:last-child{font-size:13.5px;color:var(--muted);line-height:1.45}
@media (max-width:820px){.acc-services{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.acc-services{grid-template-columns:1fr}}
/* Formulaires : boutons à droite, « Enregistrer » tout à droite (premier bouton du bloc) */
.esp-form>.esp-actions.esp-plein{flex-direction:row-reverse;justify-content:flex-start}
/* Accueil : note des bailleurs sous l'exemple de quittance */
.acc-apercu{flex-direction:column;align-items:center;gap:12px}
.acc-note{margin:0;font-size:14px;color:var(--muted)}.acc-note strong{color:var(--navy)}.acc-et{color:#E8A317;letter-spacing:1px}

/* « Ensuite, tout se fait tout seul » : titres et textes alignés d'une carte à l'autre */
@supports (grid-template-rows:subgrid){.acc-grille{grid-auto-rows:auto}.acc-carte{display:grid;grid-row:span 3;grid-template-rows:subgrid;align-content:start;row-gap:6px}.acc-carte p{margin:0}}
.acc-droite{display:flex;flex-direction:column;align-items:center;gap:12px}.acc-droite .acc-services{width:100%}
/* « Vos documents sont prêts » : demande d'avis (A) et location en 1 minute (B) */
.dp-avis{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin-top:12px;padding:12px 14px;background:#FFFBEB;border:1px solid #FDE7A9;border-radius:12px;font-size:14.5px}
.dpa-ok{color:#065F46;font-weight:700}.dpa-et{display:inline-flex;gap:2px}
.dpa-et a{font-size:28px;line-height:1;color:#D7DCE4;text-decoration:none;transition:color .1s,transform .1s}
.dpa-et:hover a{color:#F5A524}.dpa-et a:hover~a{color:#D7DCE4}.dpa-et a:hover{transform:scale(1.12)}
.dpa-tp{font-size:13.5px;color:#00205B}
.dp-loc{margin-top:16px;border:0;border-radius:14px;padding:20px 20px 16px;background:#EDF2FA}
.dpl-et{font-size:12.5px;font-weight:800;color:#047857;text-transform:uppercase;letter-spacing:.05em}
.dpl-t{margin:4px 0;font-size:19px;color:#00205B;line-height:1.3}.dpl-s{margin:0 0 12px;color:#4A5568;font-size:14px}
.dpl-g{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px}.dpl-g2{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:10px}
.dpl-c label{display:block;font-size:13px;font-weight:700;color:#00205B;margin-bottom:4px}.dpl-c label small{font-weight:500;color:#4A5568}
.dpl-c .input{width:100%}
.dp-loc .dpl-pre{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0}.dpl-pre span{background:#fff;color:#00205B;border-radius:999px;padding:3px 10px;font-size:13px}.dpl-pre b{color:#065F46}
.dp-loc .error{margin:10px 0 0}
.dpl-act{display:flex;justify-content:flex-end;margin-top:14px}
.dpl-ras{list-style:none;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 14px;margin:8px 0 0;padding:0;font-size:13px;color:#4A5568}.dpl-ras li::before{content:"✓ ";color:#047857;font-weight:800}
.dp-fait{margin-top:16px;border-radius:14px;padding:16px 18px;background:#DDF3E8;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.dp-fait strong{color:#065F46;font-size:16px;display:block}.dp-fait div>span{font-size:14px;color:#4A5568}
@media(max-width:700px){.dpl-g{grid-template-columns:1fr 1fr}.dpl-large{grid-column:1/-1}.dpl-act .btn{width:100%;justify-content:center}.dpl-ras{justify-content:flex-start}}
.avis-src{font-size:.85em;color:inherit;opacity:.85;text-decoration:underline dotted;text-underline-offset:2px;white-space:nowrap}
/* « Vos documents sont prêts » : étapes numérotées, document téléchargé, boutons plus grands sur téléphone */
.dp-n{display:flex;align-items:center;gap:10px;margin:14px 0 0;font-weight:800;color:var(--navy);font-size:16px}
.dp-n span,.dp-n-p{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--go);color:#fff;font-size:14px;font-weight:800;flex:none}
.dp-n-p{width:22px;height:22px;font-size:12.5px;margin-right:8px;vertical-align:-5px}
.dp-ok{font-style:normal;font-size:13px;font-weight:700;color:#065F46;background:#DDF3E8;border-radius:999px;padding:2px 9px;margin-left:6px;white-space:nowrap}
.dp-li-ok .btn-dl{opacity:.75}
@media (max-width:600px){.dp-liste li{padding:12px 0}.dp-btns .btn{min-height:44px;padding:10px 18px;font-size:15.5px}.dp-liste li strong{flex:1 1 100%}.dp-btns{flex:1 1 100%}.dp-btns .btn{flex:1;justify-content:center}}
/* Frise « Votre locataire arrive dans N jours » (compte sans location) */
.fa{margin-top:16px}
.fa-tete{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.fa-tete .esp-h2{margin:0}.fa-tete .muted{margin:4px 0 0}
.fa-j{flex:none;background:var(--navy);color:#fff;font-weight:800;font-size:20px;border-radius:12px;padding:8px 12px;line-height:1}
.fa-frise{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;position:relative}
.fa-frise li{position:relative;padding-top:38px}
.fa-frise li::before{content:'';position:absolute;top:13px;left:28px;right:-14px;height:2px;background:#D5DBE5}.fa-frise li:last-child::before{display:none}
.fa-pt{position:absolute;top:0;left:0;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid #D5DBE5;color:var(--muted);font-weight:800;font-size:13px}
.fa-now .fa-pt{background:var(--go);border-color:var(--go);color:#fff;box-shadow:0 0 0 4px rgba(4,120,87,.15)}
.fa-frise small{display:block;font-weight:800;color:var(--go);font-size:12.5px;text-transform:uppercase;letter-spacing:.04em}
.fa-frise strong{display:block;color:var(--navy);margin:2px 0 4px}.fa-frise p{margin:0;font-size:14px;color:var(--muted)}
.fa-frise .btn{margin-top:10px}
@media (max-width:820px){.fa-frise{grid-template-columns:1fr;gap:0}.fa-frise li{padding:0 0 18px 42px}.fa-frise li::before{top:28px;bottom:0;left:13px;right:auto;width:2px;height:auto}.fa-pt{top:0}}
/* Accueil sans location : aperçu de la quittance à gauche, texte à droite (ordinateur) */
@media (min-width:821px){.acc-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}.acc-hero .acc-apercu{order:-1}}
/* Étape 2 « locataire qui arrive » : gratuit mis en avant */
.dpl-gratuit{display:inline-block;background:#DDF3E8;color:#065F46;font-weight:800;font-size:13.5px;border-radius:999px;padding:4px 12px}
.dpl-promesse{list-style:none;margin:0 0 16px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.dpl-promesse li{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #CFE9DC;border-radius:12px;padding:12px 14px}
.dpl-promesse li>span{font-size:24px;line-height:1}.dpl-promesse div{flex:1;font-size:14px;color:#4A5568}.dpl-promesse strong{display:block;color:#00205B;font-size:15px}
.dpl-promesse b{color:#065F46;background:#DDF3E8;border-radius:999px;padding:3px 10px;font-size:12.5px}
@media (max-width:600px){.dpl-promesse{grid-template-columns:1fr}}
.fa-gratuit{color:#065F46}
/* v3 : étapes ① et ② alignées, espacements */
.dp-n2{margin:22px 0 10px}
.dp-n + .dp-liste{margin-top:8px}
.dp-loc{margin-top:0}
.dp-loc .dpl-t{margin:0 0 8px}
.dp-loc .dpl-s{margin:0 0 14px}
.dpl-promesse{margin:0 0 18px}
.dpl-promesse li{align-items:center}
.dpl-act{gap:10px;flex-wrap:wrap;align-items:center}
@media(max-width:700px){.dpl-act .btn-ghost{order:2}}
.card.dp .dp-n{margin:16px 0 8px}.card.dp .dp-n2{margin:24px 0 10px}
.dp-tete .muted{margin-bottom:2px}
@media (max-width:600px){.dpl-promesse li{display:grid;grid-template-columns:auto 1fr;align-items:start;column-gap:12px}.dpl-promesse li>b{grid-column:2;justify-self:start;margin-top:6px}.dpl-gratuit{border-radius:10px}}

/* ── Formules, présentation « panier » (28/10/2026) ── */
.fo{container:fo/inline-size}
.fo-grille{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:26px;align-items:start}
.fo-etape{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 12px;margin:0 0 12px}
.fo-etape h2{white-space:nowrap;margin:0;font-size:13.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#7A869A}
.fo-bascule{display:inline-flex;background:#EAEEF4;border-radius:999px;padding:4px}
.fo-bascule button{white-space:nowrap;border:0;background:none;font:inherit;font-size:14px;font-weight:700;color:var(--muted);padding:7px 14px;border-radius:999px;cursor:pointer}
.fo-bascule button[aria-pressed=true]{background:#fff;color:var(--navy);box-shadow:0 1px 3px rgba(0,32,91,.15)}
.fo-bascule em{font-style:normal;color:var(--go-2);font-size:12px;margin-left:4px}
.fo-base{display:flex;align-items:center;gap:14px;background:var(--go-50);border:1.5px solid #BFE3D1;border-radius:14px;padding:14px 18px}
.fo-base-fini{background:var(--bg);border-color:var(--line)}
.fo-coche{flex:none;width:22px;height:22px;border-radius:6px;background:var(--go);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:800}
.fo-base-fini .fo-coche{background:#94A0B4}
.fo-base .fo-c{flex:1}.fo-base b{color:var(--navy)}.fo-base small{display:block;color:var(--go-2);font-size:13.5px}.fo-base-fini small{color:var(--muted)}
.fo-base .fo-p{font-weight:800;color:var(--go-2)}
.fo .fo-plus{margin:18px 0 24px;font-size:14px;font-weight:700;color:var(--navy)}
.fo-opt{position:relative;display:block;width:100%;text-align:left;font:inherit;color:inherit;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:16px 18px;margin:0 0 20px;cursor:pointer;transition:border-color .15s}
.fo-opt:hover{border-color:#B7C9E2}
.fo-opt[aria-checked=true]{border:2px solid var(--go);padding:15.5px 17.5px;box-shadow:0 8px 24px rgba(4,120,87,.10)}
.fo-ruban{position:absolute;top:-12px;right:18px;background:var(--go);color:#fff;font-size:12px;font-weight:800;border-radius:999px;padding:3px 12px}
.fo-ruban-act{background:var(--navy)}
.fo-ligne{display:flex;gap:14px;align-items:center}
.fo-rond{flex:none;width:22px;height:22px;border-radius:50%;border:2px solid #B7C2D3;position:relative}
.fo-opt[aria-checked=true] .fo-rond{border-color:var(--go)}.fo-opt[aria-checked=true] .fo-rond::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--go)}
.fo-ligne .fo-c{flex:1;min-width:0}
.fo-n{display:block;font-weight:800;color:var(--navy);font-size:16px}
.fo-q{display:block;font-size:14px;color:var(--muted)}
.fo-ligne .fo-p{text-align:right;white-space:nowrap;color:var(--muted);font-size:14px}
.fo-ligne .fo-p b{color:var(--navy);font-size:15px}
.fo-an{display:block;font-size:12.5px}
.fo-opt[aria-checked=true] .fo-n{font-size:18px}
.fo-opt[aria-checked=true] .fo-p b{font-size:28px;line-height:1.1}
.fo-opt[aria-checked=true] .fo-an{color:var(--go-2);font-weight:700;font-size:13.5px}
.fo-inclus{display:none;list-style:none;margin:14px 0 0;padding:14px 0 0 36px;border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:6px 18px}
.fo-opt[aria-checked=true] .fo-inclus{display:grid}
.fo-inclus li{font-size:14.5px;padding-left:24px;position:relative}
.fo-inclus li::before{content:"✓";position:absolute;left:0;top:2px;width:17px;height:17px;border-radius:50%;background:var(--go-50);color:var(--go-2);font-size:11px;font-weight:800;display:grid;place-items:center}
.fo-inclus li.fo-tout{grid-column:1/-1;font-weight:700;color:var(--navy);padding-left:0}.fo-inclus li.fo-tout::before{display:none}
.fo-fin{margin:6px 0 0;font-size:13px;color:var(--muted)}
.fo-panier{container:panier/inline-size;background:#F5F8FC;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 12px 32px rgba(0,32,91,.08)}
.fo-pa-t{padding-bottom:6px}
.fo-pa-t b{display:block;font-size:17px;color:var(--navy);line-height:1.3}.fo-pa-t small{color:var(--muted);font-size:13.5px}
.fo-pastille{background:var(--go-50);color:var(--go-2);font-size:12.5px;font-weight:800;border-radius:8px;padding:4px 9px;white-space:nowrap}
.fo-bien{display:flex;justify-content:space-between;gap:10px;padding:8px 0;font-size:15px}
.fo-bien>span:first-child{color:var(--navy);min-width:0;overflow-wrap:anywhere}
.fo-v{font-weight:700;white-space:nowrap;text-align:right}.fo-ok{color:var(--go-2)}.fo-ko{color:#8A5200}
.fo-bien-f{margin-top:4px}
.fo-bien-ko{background:#FFF6E0;border-radius:10px;padding:8px 10px;margin:2px -10px}.fo-bien-ko small{display:block;font-size:12.5px;color:#7A5200}
.fo-libre{margin:0;font-size:13px;color:var(--muted)}
.fo-alerte{background:#FFF6E0;color:#7A5200;border-radius:10px;padding:10px 12px;font-size:13.5px;margin:10px 0 0}
.fo-per{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fo-per button{display:flex;flex-wrap:wrap;align-items:center;gap:2px 12px;width:100%;text-align:left;font:inherit;color:inherit;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:10px 14px;cursor:pointer}
.fo-per button:hover{border-color:#B7C9E2}
.fo-per button[aria-checked=true]{border:2px solid var(--go);padding:9.5px 13.5px;background:#FAFDFB}
.fo-per button[aria-checked=true] .fo-rond{border-color:var(--go)}.fo-per button[aria-checked=true] .fo-rond::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--go)}
.fo-per-t{flex:1;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px}.fo-per-t b{color:var(--navy);font-size:15px}
.fo-per-t em{font-style:normal;font-size:12px;font-weight:800;color:var(--go-2);background:var(--go-50);border-radius:6px;padding:1px 7px}.fo-per-t small{font-size:12.5px;color:var(--muted)}
.fo-per-p{flex-basis:100%;padding-left:34px;font-weight:700;color:var(--navy);font-size:14.5px;white-space:nowrap}
.fo-tot{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:16px 0 14px;padding-top:14px;border-top:1px solid #DFE5EE}
.fo-tot span{font-weight:800;color:var(--navy);font-size:15.5px;line-height:1.25}.fo-tot b{font-size:32px;color:var(--navy);line-height:1;white-space:nowrap}
.fo-tot-s{margin:6px 0 16px;text-align:right;font-size:13px;color:var(--muted)}
.app .fo-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;margin:0;text-align:center;font-size:17px;padding:10px 16px;border-radius:12px;box-shadow:0 6px 16px rgba(4,120,87,.25)}
.fo-actuelle{display:block;text-align:center;font-weight:800;color:var(--go-2);background:var(--go-50);border-radius:12px;padding:12px}
.fo-forts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:22px 0 0}
.fo-forts>div{display:flex;gap:10px;align-items:flex-start;background:var(--bg);border-radius:12px;padding:10px 12px}
.fo-forts b{display:block;font-size:13.5px;color:var(--navy);line-height:1.25}.fo-forts small{display:block;font-size:12px;color:var(--muted);line-height:1.3}
.g-euro{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23065F46' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 7a7 7 0 1 0 0 10'/%3E%3Cpath d='M4 10h10M4 14h10'/%3E%3C/svg%3E")}
.fo-panier .fo-moyens{display:block;margin:12px 0 0;font-size:12.5px;color:var(--muted);text-align:center}
.fo-cad{display:inline-block;vertical-align:-2px;margin-right:5px;width:14px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23065F46' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center/14px no-repeat}
.fo-panier .fo-notes{margin:14px 0 0;padding-top:12px;border-top:1px solid #DFE5EE;font-size:12.5px;color:var(--muted);text-align:center;line-height:1.5}
.fo-panier .abo-note{justify-content:center;flex-wrap:wrap;margin:12px 0 0;font-size:13px}
.fo-barre{display:none}
.fo-mini .fo-panier{box-shadow:none}
@container panier (max-width:400px){.fo-tot b{font-size:28px}}
@container fo (max-width:700px){.fo-forts{grid-template-columns:repeat(2,minmax(0,1fr))}.fo-forts>div:last-child{grid-column:1/-1}}
@container fo (max-width:480px){.fo-forts{grid-template-columns:1fr}.fo-per{grid-template-columns:1fr}}
@container fo (max-width:520px){.fo-ligne{flex-wrap:wrap;row-gap:4px}.fo-ligne .fo-p{flex-basis:100%;text-align:left;padding-left:36px;white-space:normal}.fo-an{display:inline;margin-left:6px}}
@container fo (max-width:760px){
  .fo-grille{grid-template-columns:minmax(0,1fr);gap:22px}
  .fo-etape{min-height:0;flex-direction:column;align-items:flex-start}.fo-etape .fo-bascule{align-self:stretch}.fo-bascule button{flex:1}
  .fo-inclus{grid-template-columns:1fr;padding-left:0}
  .fo-opt[aria-checked=true] .fo-p b{font-size:24px}
  .fo-panier{padding:18px 16px}
  .fo-tot b{font-size:28px}.fo-tot span{font-size:15px}
}
@media (max-width:900px){
  .fo-barre{display:flex;position:sticky;bottom:0;z-index:5;margin:14px -18px -18px;background:#fff;border-top:1px solid var(--line);padding:10px 72px 10px 16px;gap:12px;align-items:center;box-shadow:0 -6px 18px rgba(0,32,91,.08)}
  .fo-barre>div{flex:none}.fo-barre b{display:block;color:var(--navy);font-size:18px;line-height:1.1}.fo-barre small{font-size:12px;color:var(--muted)}
  .fo-barre .btn,.fo-barre .fo-btn-barre{flex:1;text-align:center;padding:12px;white-space:nowrap}
}

.fo .fo-plus.fo-plus-p{margin:20px 0 10px}
.g-eclair{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23065F46' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 4 14h7l-1 8 9-12h-7z'/%3E%3C/svg%3E")}
.fo-etape-3{margin-top:22px}
.fo-grille>div:last-child .fo-per{grid-template-columns:1fr}

/* Squelette affiché pendant le chargement de l'espace (remplacé par la 1re vue) */
.esp-sq{display:grid;gap:14px;padding:4px 0}
.esp-sq i{display:block;border-radius:12px;background:linear-gradient(90deg,#eef1f6 0%,#f7f9fc 50%,#eef1f6 100%);background-size:200% 100%;animation:sq 1.2s ease-in-out infinite}
.esp-sq .sq-t{height:34px;width:min(420px,70%)}
.esp-sq .sq-b{height:120px}
.esp-sq .sq-g{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.esp-sq .sq-g i{height:84px}
@keyframes sq{0%{background-position:100% 0}100%{background-position:-100% 0}}
@media (prefers-reduced-motion:reduce){.esp-sq i{animation:none}}
@media (max-width:600px){.esp-sq .sq-g{grid-template-columns:1fr 1fr}.esp-sq .sq-g i:last-child{display:none}}

/* Carte « Arrivée de votre locataire » : l'envoi du guide est sous sa ligne (29/10/2026) */
.kit .kit-corps{grid-template-columns:minmax(0,1fr);max-width:760px}
.kit-liste li.kit-li-guide{flex-wrap:wrap}
.kit-li-guide .kit-guide,.kit-li-guide .kit-ok{flex:1 1 100%;margin:2px 0 4px 30px}
.kit-li-guide .kit-guide{padding:14px}
.kit-li-guide .kit-guide>.btn{align-self:flex-start}
.kit-li-guide .kit-guide .help{margin:0}
@media (max-width:600px){.kit-li-guide .kit-guide,.kit-li-guide .kit-ok{margin-left:0}.kit-li-guide .kit-guide>.btn{align-self:stretch}}

/* Encart « votre avis » présenté par Camille, assistante virtuelle (29/10/2026) */
.encart-avis>div.ea-cam-txt{flex-direction:row;align-items:center;gap:14px}
.ea-cam-txt img{flex:none;width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.ea-cam-txt>div{display:flex;flex-direction:column;gap:1px;min-width:0}
.encart-avis .ea-cam{font-size:12.5px;font-weight:700;color:var(--go)}
/* Formules (29/10/2026) : paiement à gauche, récapitulatif à la hauteur de la colonne de gauche, options choisies sur fond vert, atouts lisibles */
.fo-grille{align-items:stretch}
.fo-droite{display:flex;flex-direction:column}
.fo-droite .fo-panier{flex:1;display:flex;flex-direction:column}
.fo-droite .fo-panier .fo-atouts{margin-top:auto;padding-top:16px}
.fo-paie{margin-top:22px}
.fo-paie .fo-per{grid-template-columns:1fr 1fr}
.fo .fo-paie+.fo-plus{margin-top:22px}
.fo-opt[aria-checked=true]{background:#F0FAF5}
.fo-per button[aria-checked=true]{background:#F0FAF5}
.fo-tot{align-items:center}
.fo-tot span{white-space:nowrap}
.fo-atouts{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.fo-atouts li{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;line-height:1.45;color:var(--ink)}
.fo-atouts b{color:var(--navy)}
.fo-at-i{flex:none;width:26px;height:26px;border-radius:50%;background:#E6F4EC;color:var(--go);display:grid;place-items:center;font-size:13px;font-weight:800}
.fo-panier .abo-note{justify-content:flex-start;margin:12px 0 0;font-size:14.5px;padding-left:36px}
.fo-panier .abo-note span:last-child{color:var(--ink-2)}
.fo-garanties{list-style:none;margin:20px 0 0;padding:16px 18px;background:#F7F9FC;border:1px solid var(--line);border-radius:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px}
.fo-garanties li{position:relative;padding-left:24px;font-size:15px;line-height:1.5;color:var(--ink)}
.fo-garanties li::before{content:"✓";position:absolute;left:0;top:0;color:var(--go);font-weight:800}
.fo-garanties b{color:var(--navy)}
.fo-garanties li:last-child{grid-column:1/-1}
@container fo (max-width:760px){.fo-garanties{grid-template-columns:1fr}.fo-droite .fo-panier .fo-atouts{margin-top:16px;padding-top:0}}
@container fo (max-width:480px){.fo-paie .fo-per{grid-template-columns:1fr}}
/* Garanties dans le récapitulatif, en bas (remplit la hauteur de la colonne) */
.fo-panier .fo-garanties{display:flex;flex-direction:column;gap:10px;grid-template-columns:none;margin:auto 0 0;padding:16px 0 0;background:none;border:0;border-top:1px solid #DFE5EE;border-radius:0}
.fo-droite .fo-panier .fo-atouts{margin-top:16px;padding-top:0}
.fo-panier .fo-garanties li{font-size:14.5px}
.fo-panier .abo-note{padding-left:36px;gap:4px}
.fo-panier .abo-etoiles{font-size:15px;letter-spacing:0}
@container fo (max-width:760px){.fo-panier .fo-garanties{margin-top:16px}}
.fo-panier .abo-note{display:block;line-height:1.5}.fo-panier .abo-note>*{margin-right:4px}.fo-panier .abo-note span:last-child{font-size:14px}
/* Formules : les deux colonnes finissent à la même hauteur (la dernière formule s'aligne sur le bas du récapitulatif) */
.fo-grille>div:first-child{display:flex;flex-direction:column}
.fo-grille>div:first-child>[role=radiogroup]{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.fo-grille>div:first-child>[role=radiogroup]>.fo-opt{margin:0}
/* Récapitulatif aéré (29/10/2026) : lignes espacées, total plus sobre, prix TTC + note + garanties regroupés en bas */
.fo-panier{padding:26px 24px}
.fo-panier .fo-pa-t{margin-bottom:14px}
.fo-panier .fo-bien{padding:9px 0}
.fo-panier .fo-libre{margin:6px 0 0}
.fo-tot{margin:20px 0 18px;padding-top:18px}
.fo-tot b{font-size:26px}
.fo-droite .fo-panier .fo-atouts{margin:0;padding:0}
.fo-bas{margin-top:auto;padding-top:20px;border-top:1px solid #DFE5EE;display:flex;flex-direction:column;gap:12px}
.fo-droite .fo-panier .fo-btn{margin-bottom:24px}
.fo-panier .fo-bas .abo-note{margin:0}
.fo-panier .fo-bas .fo-garanties{margin:0;padding:0;border:0}
.fo-bas .fo-atouts li,.fo-panier .fo-garanties li{font-size:14.5px}
@container panier (max-width:400px){.fo-tot b{font-size:24px}}
@container fo (max-width:760px){.fo-tot b{font-size:24px}.fo-panier{padding:20px 16px}.fo-bas{margin-top:0}}
.fo-bas .fo-at-i{display:none}
.fo-bas .fo-atouts li{display:block;position:relative;padding-left:24px;line-height:1.5}
.fo-bas .fo-atouts li::before{content:"✓";position:absolute;left:0;top:0;color:var(--go);font-weight:800}
.fo-panier .fo-bas .abo-note{padding-left:24px}
/* Note juste sous le bouton de paiement, centrée */
.fo-droite .fo-panier .fo-btn{margin-bottom:0}
.fo-panier .fo-note-btn{margin:10px 0 24px;text-align:center}
.fo-panier .fo-note-btn .abo-note{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:4px;padding:0;margin:0}
.fo-panier .fo-note-btn .abo-note>*{margin:0}
.fo-panier .fo-note-btn .abo-note{flex-wrap:nowrap;white-space:nowrap;font-size:14px}.fo-panier .fo-note-btn .abo-note span:last-child{font-size:13px}.fo-panier .fo-note-btn .abo-etoiles{font-size:14px}
/* Points forts sous les formules : 6 badges, 3 par ligne, texte lisible (29/10/2026) */
.fo-forts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.fo-forts>div{padding:14px 16px;gap:12px;align-items:flex-start}
.fo-forts b{font-size:15px;margin-bottom:2px}
.fo-forts small{font-size:13.5px;line-height:1.45;color:var(--ink-2)}
.fo-forts>div:last-child{grid-column:auto}
@container fo (max-width:760px){.fo-forts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container fo (max-width:480px){.fo-forts{grid-template-columns:1fr}}
/* Récapitulatif : taille naturelle, reste visible pendant le défilement des formules ; 5 badges (3 + 2) (29/10/2026) */
.fo-grille{align-items:start}
.fo-droite{position:sticky;top:16px;align-self:start}
.fo-droite .fo-panier{flex:none}
.fo-panier .fo-note-btn{margin:16px 0 4px}
.fo-forts{grid-template-columns:repeat(6,minmax(0,1fr))}
.fo-forts>div{grid-column:span 2}
.fo-forts>div:nth-child(n+4){grid-column:span 3}
@container fo (max-width:760px){.fo-droite{position:static}.fo-forts{grid-template-columns:repeat(2,minmax(0,1fr))}.fo-forts>div,.fo-forts>div:nth-child(n+4){grid-column:auto}.fo-forts>div:last-child{grid-column:1/-1}}
@container fo (max-width:480px){.fo-forts{grid-template-columns:1fr}}
.fo-tot .fo-ttc{font-size:12px;font-weight:700;color:var(--muted);margin-left:4px;letter-spacing:.03em}
.g-aide{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23065F46' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.8 7L4 20l1.1-4.6A8 8 0 1 1 21 12z'/%3E%3C/svg%3E")}
/* 6 badges : 3 par ligne */
.fo-forts>div,.fo-forts>div:nth-child(n+4){grid-column:span 2}
@container fo (max-width:760px){.fo-forts>div,.fo-forts>div:nth-child(n+4),.fo-forts>div:last-child{grid-column:auto}}
.fo-etape-f{margin-top:26px}
.fo-etape-f{margin-bottom:24px}
@container panier (max-width:400px){.fo-tot b{font-size:23px}.fo-tot span{font-size:14.5px}}
/* Récapitulatif : adresses alignées à gauche (ligne « mode découverte » comprise), places libres sous les adresses */
.fo-panier .fo-bien.fo-bien-ko{padding:9px 10px;margin:2px -10px}
.fo-panier .fo-libre{margin:0;padding:2px 0 9px;font-size:15px;color:var(--ink-2)}
/* Saisie d'un paiement : bouton principal à droite (30/10/2026) */
.pai-actions{justify-content:flex-end}
/* Fenêtre « mode découverte » : le bouton « Activer » toujours visible sans défiler (pied collant, aperçu à la hauteur de l'écran) */
.dec-dialog{max-height:calc(100vh - 24px);overflow:auto;padding-bottom:0}
.dec-papier{height:clamp(240px,calc(100vh - 380px),640px)}
.dec-pied{position:sticky;bottom:0;z-index:2;background:#fff;margin:0 -24px;padding:12px 24px 16px;border-top:1px solid var(--line);box-shadow:0 -6px 16px rgba(0,32,91,.06)}
@media (max-width:600px){.dec-pied{margin:0 -16px;padding:10px 16px 14px}}
/* Toutes les fenêtres : boutons alignés à droite, le bouton principal (vert) en dernier, à droite (01/11/2026) */
.esp-dialog .esp-actions{justify-content:flex-end}
.esp-dialog .esp-actions>.btn-go{order:10}
/* Onglet « Révision du loyer » (01/11/2026) */
.rv-etape{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}
.rv-etape .esp-h3{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--navy);letter-spacing:.02em;text-transform:none;margin:0 0 10px}
.rv-n{flex:none;width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:13px}
.rv-choix{display:flex;flex-wrap:wrap;gap:8px}
.rv-radio{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--line);border-radius:10px;padding:9px 14px;cursor:pointer;font-weight:600;background:#fff}
.rv-radio:has(input:checked){border-color:var(--go);background:#F0FAF5}
.rv-radio input{accent-color:var(--go);width:18px;height:18px;margin:0}
.rv-form .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.rv-resultat{margin-top:14px;background:#F0FAF5;border:1px solid #A7DCC2;border-radius:12px;padding:14px 16px}
.rv-chiffre{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
.rv-chiffre span{font-weight:700;color:var(--navy)}
.rv-chiffre strong{font-size:28px;color:var(--go);line-height:1.1}
.rv-chiffre small{color:var(--ink-2);font-size:14px}
.rv-detail{margin:6px 0 0;color:var(--ink-2);font-size:14.5px}
.rv-liste{margin:0 0 10px;padding-left:20px}.rv-liste li{margin:6px 0;line-height:1.5}
@media (max-width:600px){.rv-form .form-grid{grid-template-columns:minmax(0,1fr)}}
/* Logiciel : boutons d'action des blocs alignés à droite, bouton principal (vert) en dernier (01/11/2026) */
#vue .card .esp-actions:not(.esp-vide .esp-actions){justify-content:flex-end}
#vue .card .esp-actions>.btn-go{order:10}
/* Onglets d'une location : tous visibles sur ordinateur (répartis sur la largeur, passage à la ligne si l'écran est étroit) (01/11/2026) */
@media(min-width:761px){
  .onglets{flex-wrap:wrap;overflow:visible;gap:4px}
  .onglets a{flex:1 1 auto;text-align:center;padding:9px 10px;font-size:14px}
}
/* Révision : résultat présenté en 3 cases (actuel → nouveau, écart), 2 boutons séparés (01/11/2026) */
.rv-resultat{padding:16px}
.rv-res-grille{display:grid;grid-template-columns:1fr auto 1.15fr 1fr;align-items:stretch;gap:10px}
.rv-res-case{background:#fff;border:1px solid #D5EBDF;border-radius:10px;padding:10px 14px;display:flex;flex-direction:column;gap:2px;min-width:0}
.rv-res-case span{font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.rv-res-case b{font-size:22px;color:var(--navy);line-height:1.2;font-variant-numeric:tabular-nums}
.rv-res-case small{font-size:13px;color:var(--ink-2)}
.rv-res-nouveau{border:2px solid var(--go);background:#fff}
.rv-res-nouveau span{color:var(--go)}
.rv-res-nouveau b{font-size:28px;color:var(--go)}
.rv-res-fleche{display:grid;place-items:center;font-size:22px;color:var(--go);font-weight:700}
.rv-detail{margin:12px 0 0;font-size:14.5px;color:var(--ink-2);font-variant-numeric:tabular-nums}
.rv-detail span{display:inline-block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-right:6px}
.rv-detail abbr{text-decoration:none;border-bottom:1px dotted var(--muted);cursor:help}
.rv-detail small{color:var(--muted)}
.rv-deux{margin:0 0 12px;padding-left:20px;color:var(--ink-2)}.rv-deux li{margin:5px 0;line-height:1.5}
.rv-etat{font-size:13px;color:var(--muted);font-weight:600}.rv-etat-ok{color:var(--go)}
@media (max-width:760px){.rv-res-grille{grid-template-columns:1fr 1fr}.rv-res-fleche{display:none}.rv-res-nouveau{grid-column:1/-1;order:-1}}
/* Aide : recherche et thèmes (01/11/2026) */
.aide-cherche{display:flex;flex-direction:column;gap:10px;margin-bottom:16px;background:linear-gradient(180deg,#F3F7FD,#fff)}
.aide-cherche-l{font-weight:800;color:var(--navy);font-size:18px}
.aide-cherche-champ{position:relative;display:flex;align-items:center}
.aide-cherche-champ>span{position:absolute;left:14px;font-size:16px;opacity:.7;pointer-events:none}
.aide-cherche-champ .input{width:100%;padding:14px 44px 14px 42px;font-size:16px;border-radius:12px;border:1.5px solid var(--line)}
.aide-cherche-champ .input:focus{border-color:var(--navy);outline:none;box-shadow:0 0 0 3px rgba(0,32,91,.12)}
.aide-cherche-champ .input::-webkit-search-cancel-button{display:none}
.aide-x{position:absolute;right:8px;border:0;background:none;font-size:22px;line-height:1;color:var(--muted);cursor:pointer;padding:4px 8px}
.aide-res{margin:0;font-size:14px;min-height:0}.aide-res:empty{display:none}
.aide-themes{display:flex;flex-wrap:wrap;gap:6px}
.aide-theme{font-size:13.5px;font-weight:600;padding:6px 12px;border-radius:999px;background:var(--bg);border:1px solid var(--line-2);color:var(--ink-2);text-decoration:none}
.aide-theme:hover{background:var(--navy-50);color:var(--navy)}
[data-aide-groupe]{scroll-margin-top:90px}
.aide-rien{border:2px dashed #A7DCC2}
.faq-liste .ast p a{display:inline;padding:0;font-size:inherit;font-weight:600}
@media (max-width:600px){.aide-themes{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -4px;padding:0 4px 2px}.aide-themes::-webkit-scrollbar{display:none}.aide-theme{flex:none}}
/* Popup d'aide : lien vers toute l'aide (01/11/2026) */
.assistant-aide{width:100%;justify-content:center;flex:none}
.assistant-liste .assistant-sous{margin:6px 0 0}
.assistant-liste .ast p a{display:inline;padding:0;font-size:inherit}
/* Mode découverte : un seul code couleur orange (fond orange clair, orange foncé pour l'icône, les badges, les liens et les boutons) (01/11/2026) */
:root{--dec:#EF6C1A;--dec-fonce:#C2520B;--dec-texte:#9A3F05;--dec-fond:#FFF4EC;--dec-bord:#FAD3B4}
.bg-v2{background:var(--dec-fond);border-color:var(--dec-bord)}
.bg-v2 .bg-ico{background:var(--dec)}
.bg-v2 .bg-btn,.bandeau-dec .btn-go,.dec-dialog .btn-go[data-paywall],[data-paywall="decouverte"].btn-go{background:var(--dec);border-color:var(--dec);color:#fff}
.bg-v2 .bg-btn:hover,.bandeau-dec .btn-go:hover,[data-paywall="decouverte"].btn-go:hover{background:var(--dec-fonce);border-color:var(--dec-fonce)}
.bandeau-dec{background:var(--dec-fond);border-color:var(--dec-bord)}
.bandeau-dec .bd-i{background:var(--dec)}
.bandeau-dec a:not(.btn){color:var(--dec-texte)}
.tag-dec,.pw-etiquette-dec,.dec-sous{background:#FFE6D3;color:var(--dec-texte)}
a.tag-dec:hover,.tag-dec.tag-lien:hover,.pw-etiquette-dec:hover{background:var(--dec);color:#fff}
.dec-note{background:var(--dec-fond);color:var(--dec-texte);border:1px solid var(--dec-bord)}
.cel-dec{background:var(--dec-fond);color:var(--dec-texte);border:1px dashed #F5A66B}
.fo-ko{color:var(--dec-texte)}
.fo-bien-ko,.fo-panier .fo-bien.fo-bien-ko{background:var(--dec-fond)}
.fo-bien-ko small{color:var(--dec-texte)}
/* Bloc « Bail » de la location : bouton puis lien, l'un sous l'autre à droite (01/11/2026) */
/* Boutons des 3 cartes de l'Aperçu : en bas, à droite, même style (02/11/2026) */
.res-carte .res-actions{margin-top:auto;padding-top:12px;justify-content:flex-end;flex-wrap:wrap;gap:8px}
/* Formulaires du logiciel : boutons à droite, « Enregistrer » (vert) en dernier (corrige le row-reverse qui les renvoyait à gauche) (01/11/2026) */
#vue .esp-form>.esp-actions.esp-plein{flex-direction:row;justify-content:flex-end}
#vue .esp-form>.esp-actions.esp-plein>.btn-go{order:10}
/* Mode découverte : onglet ou outil réservé aux locations activées */
.reserve-dec{display:flex;flex-direction:column;gap:10px;align-items:flex-start;background:var(--dec-fond);border-color:var(--dec-bord)}
.reserve-dec .esp-actions{align-self:stretch}
.reserve-dec .btn-go{background:var(--dec);border-color:var(--dec)}
/* Cartes Logements / Locations : bouton vert à droite (01/11/2026) */
.lg-btn{align-self:flex-end}
.lg-carte:hover .lg-btn.btn-go{background:var(--go-2,#05603F);border-color:var(--go-2,#05603F);color:#fff}
.conseil-loyers{margin-bottom:16px}
/* Diagnostics et Logement décent : questions à gauche (1/4), résultat à droite (3/4) (01/11/2026) */
.duo-1-3{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,3fr);gap:24px;align-items:start}
.duo-1-3>form{position:sticky;top:12px;background:#F7F9FC;border:1px solid var(--line-2);border-radius:12px;padding:14px}
.duo-1-3 .diag-form{grid-template-columns:minmax(0,1fr);margin:0}
.duo-1-3 .diag-form label{white-space:normal;overflow:visible}
.duo-1-3 .decent-form .dec-groupe{padding:4px 10px 8px;background:#fff}
.duo-1-3 .decent-form .dec-q{flex-direction:column;align-items:flex-start;gap:6px}
.duo-1-3 .decent-form .dec-q>div:first-child{flex:none}
.duo-1-3>div[id$="-res"]>*:first-child{margin-top:0}
@media (max-width:900px){.duo-1-3{grid-template-columns:minmax(0,1fr)}.duo-1-3>form{position:static}}
/* Loyer du marché : texte du bas aéré */
#marche-corps>.help,#marche-corps>.notice{margin:12px 0 0;line-height:1.55}
#marche-corps>.notice{padding:12px 16px}
#marche-corps>.marche-source{margin-top:16px;padding-top:12px;border-top:1px solid var(--line-2)}
.duo-1-3:has(.decent-form){grid-template-columns:minmax(0,2fr) minmax(0,3fr)}
.duo-1-3>form.decent-form{position:static}
.duo-1-3>#decent-res{position:sticky;top:12px}
.duo-1-3 .decent-form .dec-choix span{white-space:nowrap}
@media (max-width:900px){.duo-1-3>#decent-res{position:static}}

/* Fenêtre « Encaisser le loyer » (02/11/2026) : récapitulatif lisible */
.enc-recap{margin:2px 0 0;padding:12px 14px;border:1px solid #E4E8EF;border-radius:10px;background:#F8FAFC;display:grid;gap:6px}
.enc-l{display:flex;justify-content:space-between;gap:12px;font-size:15px}
.enc-l dt{color:#4A5568;margin:0}
.enc-l dd{margin:0;text-align:right;color:#1B2533;overflow-wrap:anywhere}
.enc-l strong{font-size:17px;color:#00205B}
.enc-note{margin:0;font-size:14px;line-height:1.5;color:#4A5568;overflow-wrap:anywhere}
/* Boutons les uns sous les autres, l'action principale (verte) en haut */
.ui-colonne .ui-actions{flex-direction:column-reverse;align-items:stretch}
.ui-colonne .ui-actions .btn{width:100%;white-space:normal;line-height:1.3;padding-top:8px;padding-bottom:8px}

/* Fenêtre d'un mois de loyer (02/11/2026) */
#d-cel form{position:relative}
.d-cel-x{position:absolute;top:-6px;right:-6px;width:40px;height:40px;border:0;background:none;font-size:26px;line-height:1;color:#4A5568;cursor:pointer;border-radius:8px}
.d-cel-x:hover{background:#F1F4F8;color:#00205B}
#d-cel .esp-h2{padding-right:36px}
.d-cel-etat{display:block}
.d-cel-sous{margin:-4px 0 12px;color:#4A5568;font-size:15px;overflow-wrap:anywhere}
/* Actions secondaires sur une ligne, l'action principale (verte) en dessous, sur toute la largeur */
.d-cel-actions{justify-content:flex-end;flex-wrap:wrap;margin-top:14px}
.d-cel-actions .btn-go{flex:1 1 100%;order:9;min-height:46px;font-size:16px}
@media (max-width:520px){.d-cel-actions .btn{flex:1 1 100%}}

/* Aperçu : boutons des cartes en bas à droite, alignés (02/11/2026) */
.apercu-grille>.card{display:flex;flex-direction:column}
.apercu-grille .res-actions{margin-top:auto;padding-top:12px;justify-content:flex-end;flex-wrap:wrap;gap:8px}

/* « Vos documents sont prêts » → étape 2 simplifiée pour un locataire qui arrive (05/11/2026) */
.dp-liste-compacte{display:flex;flex-wrap:wrap;gap:8px}
.dp-liste-compacte li{border:1px solid var(--line);border-radius:12px;background:#fff;padding:6px 6px 6px 12px;gap:10px;flex-wrap:nowrap}
.dp-liste-compacte li strong{font-size:14.5px;color:var(--navy)}
.dp-liste-compacte li.dp-li-ok{border-color:#9ED9BD;background:#F3FBF7}
.dp-liste-compacte .dp-btns{gap:6px}
.dp-duree{font-weight:600;color:#047857;font-size:13.5px;white-space:nowrap}
.dp-arr{background:#EDF2FA}
.dp-arr .dpl-t{font-size:20px;line-height:1.3}
.dpl-frise{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.dpl-frise li{background:#fff;border-radius:12px;padding:10px 12px;font-size:13.5px;color:var(--muted);line-height:1.4;box-shadow:0 1px 2px rgba(0,32,91,.08)}
.dpl-frise b{display:block;color:#047857;font-size:12px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}
.dpl-frise strong{display:block;color:var(--navy);font-size:14.5px}
.dpl-ligne{display:grid;grid-template-columns:2fr 1fr auto;gap:10px;align-items:end}
.dpl-ligne .dpl-c-btn .btn{white-space:nowrap;min-height:48px}
.dp-arr .dpl-pre{margin:10px 0 0}
.dpl-bas{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 18px;margin-top:12px}
.dpl-bas .dpl-ras{margin:0;justify-content:flex-start}
.dpl-lien{display:inline-block;margin-top:10px;background:none;border:0;padding:0;font:inherit;font-size:13.5px;color:var(--navy);text-decoration:underline;cursor:pointer}
.dp-barre{display:none}
@media (max-width:700px){
  .dpl-frise{grid-template-columns:1fr 1fr}
  .dpl-ligne{grid-template-columns:1fr}
  .dpl-ligne .dpl-c-btn .btn{width:100%;justify-content:center}
  .dp-arr .dpl-t{font-size:18.5px}
  .card.dp .dp-n2 .dp-duree{display:block;margin-top:1px}
  .dp-liste-compacte li{width:100%;justify-content:space-between}
  .dp-liste-compacte .dp-btns{flex:none}.dp-liste-compacte .dp-btns .btn{flex:none;min-height:40px;padding:8px 14px;font-size:14.5px}
  .dp-liste-compacte li strong{flex:1 1 auto}
  .dp-barre.dp-barre-on{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--navy);color:#fff;padding:10px 14px;align-items:center;justify-content:space-between;gap:10px;box-shadow:0 -6px 18px rgba(0,32,91,.25)}
  .dp-barre span{font-size:14px;line-height:1.3}.dp-barre b{display:block}
  .dp-barre .btn{white-space:nowrap}
}
.dp-n-txt{font-style:normal}
/* Loyer payé : « Quittance » en vert, à droite, sur la même ligne (05/11/2026) */
.d-cel-actions.d-cel-paye .btn{flex:none;min-height:44px;font-size:15px;padding:9px 18px}
@media (max-width:520px){.d-cel-actions.d-cel-paye .btn{flex:1 1 100%}}
/* Fenêtre d'un document (quittance, reçu, courriers) : même présentation que la fenêtre d'un mois (05/11/2026) */
#d-doc form{position:relative}
#d-doc .esp-h2{padding-right:36px}
#d-doc-recap .enc-recap{margin:0 0 14px}
#d-doc-champs{margin-top:4px}
.d-doc-actions{justify-content:flex-end;flex-wrap:wrap;margin-top:16px}
@media (max-width:520px){.d-doc-actions .btn{flex:1 1 100%}}
/* Page de connexion : points forts et note sous les 2 blocs (05/11/2026) */
.esp-connexion>.conn-confiance{grid-column:1/-1;order:3;margin:4px 0 0}
@media (min-width:761px){.esp-connexion{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.esp-connexion{grid-template-columns:1fr}}
/* Saisie du code (05/11/2026) : case du code et bouton vert centrés, de la même largeur ; les autres boutons en dessous, un peu à l'écart */
#code-form .field{align-items:center;text-align:center}
#code-form .field label{align-self:center}
#code-form .esp-code-input{width:100%;max-width:320px;margin:0 auto}
#code-form .code-valider{width:100%;max-width:320px;align-self:center;justify-content:center;margin-top:-4px}
#code-form .code-autres{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}
#code-form .code-autres .btn{font-size:14.5px;min-height:40px;padding:8px 16px}
#code-form .help{text-align:center}
/* Note sous « Choisir cette formule » (05/11/2026) : texte plus long (nombre d'avis + sondage) → retour à la ligne, jamais hors du bloc */
.fo-panier .fo-note-btn .abo-note{flex-wrap:wrap;white-space:normal;font-size:13.5px;line-height:1.45;text-align:center;row-gap:0}
.fo-panier .fo-note-btn .abo-note>span:last-child{font-size:12.5px;max-width:100%}
.fo-panier .fo-note-btn .abo-note .avis-src{white-space:nowrap}
