/* QUALITE 24 — appli Architecte refaite le 17/10/2026 sur le modèle de l'appli Conseiller (mêmes valeurs que css/conseiller-app.css, préfixe ar-).
   Chargée APRÈS architecte.css et q24-ios.css : barre du bas comme une appli iPhone, écran « Aujourd'hui », fiche villa en onglets.
   Aussi chargée par archi-signer.html (frise des 3 étapes, fenêtre « Document prêt »).
   Couleurs du thème iOS commun (--i-…), clair et sombre selon le réglage de l'iPhone. Zones de toucher ≥ 44 px, texte ≥ 13 px (12 px dans la barre du bas
   et les pastilles, comme Conseiller). Aucun attribut style dans le HTML (CSP) : les barres de progression sont des éléments <progress>.
   17/10/2026 : frise des 8 étapes en 13 px, barre du bas et frise de signature sans débordement sous 400 px.
   17/10/2026 (suite) : écran de connexion par identifiant et mot de passe, code reçu par e-mail dans la fenêtre de signature. */
.ar{max-width:760px;padding:0 16px calc(96px + env(safe-area-inset-bottom,0px))}
.ar-coque{min-height:100vh}
.ar-haut{margin:0 -16px 6px;padding-left:16px;padding-right:16px}
.ar-haut__logo{width:64px}
.ar-haut__titre{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ar-haut__moi{white-space:nowrap}
@media (max-width:479px){.ar-haut__role{display:none}}
.ar-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ar-centre{text-align:center}
.ar-libelle{display:block;font-size:14px;font-weight:600;margin:8px 0 4px}

/* Barre du bas (5 onglets) */
.ar-barre{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));
  background:var(--i-bar);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-top:.5px solid var(--i-sep-strong)}
.ar-barre button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:50px;border:0;background:none;color:var(--i-label2);
  font:600 12px/1.1 var(--i-font);cursor:pointer;-webkit-tap-highlight-color:transparent}
.ar-barre button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ar-barre svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ar-barre button[aria-current="true"]{color:var(--i-accent)}
.ar-barre button[aria-current="true"] svg{stroke-width:2.1}
.ar-barre__pastille{position:absolute;top:2px;left:calc(50% + 6px);min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--i-accent);color:var(--i-on-accent);
  font:700 12px/19px var(--i-font);font-style:normal;text-align:center}
.ar-barre button:focus-visible{outline:2px solid var(--i-accent);outline-offset:-2px;border-radius:12px}
@media (min-width:820px){.ar-barre{left:50%;transform:translateX(-50%);width:600px;bottom:12px;border-radius:22px;border:.5px solid var(--i-sep-strong);padding-bottom:6px}}

/* Titres et en-tête de page */
.ar-grand-titre{font:700 32px/1.15 var(--i-font)!important;letter-spacing:.005em;margin:8px 0 4px}
.ar-entete{margin:6px 0 14px}
.ar-entete__date{margin:0;font:600 13px/1.2 var(--i-font);letter-spacing:.06em;text-transform:uppercase;color:var(--i-label2)}
.ar-entete__sous{margin:2px 0 0;color:var(--i-label2);font-size:16px}
.ar-entete__sous b{color:var(--i-accent)}
.ar-retour{margin:6px 0 4px}
.ar-sous-titre{font-size:15px!important;line-height:1.3!important;color:var(--i-label2);margin:14px 0 8px}

/* Chiffres du jour */
.ar-chiffres{display:grid;grid-template-columns:repeat(2,1fr)!important;gap:10px;margin:0 0 12px}
@media (min-width:640px){.ar-chiffres{grid-template-columns:repeat(4,1fr)!important}}
button.ar-chiffre{border:0;font:inherit;color:inherit;cursor:pointer;text-align:left;padding:12px 14px;border-radius:16px;background:var(--i-card);box-shadow:var(--i-shadow)}
button.ar-chiffre b{display:block;font-size:28px;line-height:1.1}
button.ar-chiffre span{display:block;font-size:13px;color:var(--i-label2)}
button.ar-chiffre.alerte b{color:var(--i-accent)}
button.ar-chiffre:focus-visible{outline:2px solid var(--i-accent);outline-offset:2px}
.ar-bandeau{display:block;margin:0 0 12px;padding:12px 14px;border-radius:14px;background:var(--i-orange-tint);color:var(--i-orange);font-weight:600;text-decoration:none}

/* Sections et tâches */
.ar-section{margin:20px 0 6px}
.ar-section__titre{display:flex;align-items:center;gap:8px;font:700 20px/1.2 var(--i-font)!important;margin:0 0 8px}
.ar-compte{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:12px;background:var(--i-accent-tint);color:var(--i-accent);font-size:14px}
.ar-compte--gris{background:var(--i-fill);color:var(--i-label2)}
.ar-section__aide{margin:-2px 0 10px;color:var(--i-label2);font-size:15px}
.ar-taches{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ar-tache{background:var(--i-card);border-radius:16px;box-shadow:var(--i-shadow);padding:14px;display:grid;gap:8px}
.ar-carte .ar-tache{box-shadow:none;background:var(--i-card2);border-radius:12px}
.ar-tache__tete{display:flex;align-items:center;gap:12px}
.ar-tache__tete b{display:block;font-size:17px}
.ar-tache__tete .ar-petit{display:block}
.ar-tache__info{margin:0;font-size:16px}
.ar-tache__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ar-tache__actions .ar-btn,.ar-btn--petit{min-height:44px!important;font-size:15px!important;padding:0 14px;border-radius:11px!important}
.ar-tache__note{flex:1 1 200px}
.ar-btn--vert{background:var(--i-green)!important;border-color:var(--i-green)!important;color:var(--i-on-accent)!important}
.ar-btn--danger{background:var(--i-accent)!important;border-color:var(--i-accent)!important;color:var(--i-on-accent)!important}
.ar-btn--plein{width:100%;margin:18px 0 8px}
.ar-btn{background:var(--i-fill)!important;border:0!important;color:var(--i-label)}
.ar-btn--rouge,.ar-btn--vert,.ar-btn--danger{background-color:var(--i-accent)}
.ar-btn--vert{background:var(--i-green)!important}
.ar-btn--rouge{background:var(--i-accent)!important;color:var(--i-on-accent)!important}
.ar-btn--lien{background:transparent!important}
.ar-btn[aria-busy="true"]{opacity:.6;pointer-events:none}
.ar-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}

/* Avatars */
.ar-avatar{flex:none;display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--i-accent-tint);color:var(--i-accent);font:700 16px/1 var(--i-font);letter-spacing:.02em}
.ar-avatar--grand{width:58px;height:58px;font-size:21px}

/* Listes : villas, intervenants, modèles */
.ar-recherche{width:100%;min-height:46px;padding:0 14px;margin:4px 0 10px}
.ar-filtres{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 -16px 12px;padding:0 16px 2px}
.ar-filtres::-webkit-scrollbar{display:none}
.ar-filtres button{flex:none;min-height:44px;padding:0 14px;border:0;border-radius:18px;background:var(--i-fill);color:var(--i-label);font:600 15px var(--i-font);cursor:pointer}
.ar-filtres button span{color:var(--i-label2);font-weight:600}
.ar-filtres button[aria-pressed="true"]{background:var(--i-label);color:var(--i-card)}
.ar-filtres button[aria-pressed="true"] span{color:var(--i-card);opacity:.7}
.ar-liste{list-style:none;margin:0;padding:0}
.ar-liste__compte{margin:0 0 6px}
.ar-item{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;padding:12px 14px;margin:0 0 8px;
  background:var(--i-card);border:0;border-radius:12px;box-shadow:var(--i-shadow);text-decoration:none;-webkit-tap-highlight-color:transparent}
.ar-item:focus-visible{outline:2px solid var(--i-accent);outline-offset:2px}
.ar-item__corps{flex:1;min-width:0;display:block}
.ar-item__haut{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.ar-item__nom{font-weight:700;font-size:17px}
.ar-item__quand{font-size:13px;color:var(--i-label2);white-space:nowrap}
.ar-item__apercu{display:block;color:var(--i-label2);font-size:15px;margin:4px 0 0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.ar-item__alerte{display:block;font-size:14px;margin:4px 0 0;color:var(--i-orange)}
.ar-item__alerte.urgent{color:var(--i-accent)}
.ar-item__badges{display:block}
.ar-chevron{flex:none;align-self:center;color:var(--i-label3);font-size:24px;line-height:1}
.ar-modeles{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.ar-modeles .ar-item{margin:0;height:100%}

/* Fiche villa */
.ar-fiche__tete{display:flex;gap:14px;align-items:center}
.ar-fiche__nom{font-size:26px!important;line-height:1.15!important;margin:0 0 2px!important}
.ar-fiche__tete p{margin:2px 0}
.ar-fiche__appel{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:12px 0 0}
.ar-seg{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:4px -16px 12px;padding:4px 16px;position:sticky;top:calc(56px + env(safe-area-inset-top,0px));z-index:10;background:var(--i-bg)}
.ar-seg::-webkit-scrollbar{display:none}
.ar-seg a,.ar-seg button{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border:0;border-radius:18px;background:var(--i-fill);color:var(--i-label);font:600 15px var(--i-font);text-decoration:none;cursor:pointer}
.ar-seg a[aria-current="true"],.ar-seg button[aria-current="true"]{background:var(--i-label);color:var(--i-card)}
.ar-seg a i,.ar-seg button i{font-style:normal;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--i-accent);color:var(--i-on-accent);font-size:12px;line-height:18px;text-align:center}
.ar-seg button.fait{color:var(--i-green)}
.ar-infos{display:grid;grid-template-columns:minmax(120px,40%) 1fr;gap:8px 12px;margin:0}
.ar-infos dt{color:var(--i-label2);font-size:15px}
.ar-infos dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.ar-infos dd .ar-petit{font-weight:400}
.ar-plier summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px}
.ar-plier summary::-webkit-details-marker{display:none}
.ar-plier summary::after{content:"›";font-size:24px;color:var(--i-label3);transform:rotate(90deg);transition:transform .2s}
.ar-plier[open] summary::after{transform:rotate(-90deg)}
.ar-plier summary h2,.ar-plier summary h3{margin:0!important}
.ar-plier__lien{font-weight:600;color:var(--i-accent)}
.ar-groupe{border:0;margin:0 0 6px;padding:0}
.ar-groupe legend{padding:0;margin:10px 0 0;font:700 15px var(--i-font);color:var(--i-label2);text-transform:uppercase;letter-spacing:.04em}

/* Frise des 8 étapes (même dessin que la frise de Conseiller ; balisage de phasesHtml inchangé) */
.ar-phases{list-style:none;margin:6px 0 4px!important;padding:2px 0 0!important;display:grid!important;grid-template-columns:repeat(8,minmax(76px,1fr));gap:0!important;overflow-x:auto;scrollbar-width:none}
.ar-phases::-webkit-scrollbar{display:none}
.ar-phases li{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:0 2px!important;border-radius:0!important;text-align:center;white-space:normal!important;
  font:600 13px/1.2 var(--i-font)!important;background:transparent!important;color:var(--i-label2)!important;-webkit-hyphens:auto;hyphens:auto}
.ar-phases li::before{content:"";position:absolute;top:8px;left:-50%;width:100%;height:3px;background:var(--i-fill)}
.ar-phases li:first-child::before{display:none}
.ar-phases li::after{content:"";order:-1;position:relative;z-index:1;width:18px;height:18px;border-radius:50%;background:var(--i-card);border:3px solid var(--i-fill);box-sizing:border-box}
.ar-phases li.fait::before,.ar-phases li.ici::before{background:var(--i-accent)}
.ar-phases li.fait::after{background:var(--i-accent);border-color:var(--i-accent)}
.ar-phases li.ici::after{border-color:var(--i-accent);box-shadow:0 0 0 5px var(--i-accent-tint)}
.ar-phases li.fait{color:var(--i-label)!important;background:transparent!important}
.ar-phases li.ici{color:var(--i-accent)!important;background:transparent!important}
.ar-carte .ar-phases li::after{background:var(--i-card)}
.ar-carte .ar-phases li.fait::after{background:var(--i-accent)}

/* Alertes, portes, mentions */
.ar-alerte{border-radius:12px;padding:10px 12px;margin:8px 0;font-size:15px;line-height:1.4}
.ar-portes{display:grid;gap:10px}
@media (min-width:640px){.ar-portes{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ar-porte{border-left:0!important;margin:0!important}
.ar-porte h3{display:flex;align-items:center;gap:8px;font-size:16px!important;line-height:1.3!important;margin:0 0 6px!important}
.ar-porte h3::before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:var(--i-orange)}
.ar-porte.ouverte h3::before{background:var(--i-green)}
.ar-manques{margin:4px 0 0;padding:0 0 0 18px;font-size:15px}
.ar-mention{font-size:13px;color:var(--i-label2);font-style:italic}
.ar-ok,.ar-limite{border-radius:12px;padding:8px 12px;font-size:15px}

/* Plans, études, fichiers */
.ar-plans{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ar-plan{padding:12px;border-radius:12px;background:var(--i-card2);display:grid;gap:8px}
.ar-plan__tete{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.ar-plan__tete b{font-size:17px;margin-right:4px}
.ar-etude__tete{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px}
.ar-etude__tete h3{margin:0!important;font-size:18px!important;line-height:1.25!important}
.ar-etude .ar-plier{margin-top:10px;border-top:.5px solid var(--i-sep);padding-top:4px}
.ar-fichiers{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.ar-fichier{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px 0 6px;border-radius:10px;font-size:15px;text-decoration:none;max-width:100%;cursor:pointer}
.ar-fichier>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ar-fichier[aria-busy="true"]{opacity:.6}
.ar-doc__ico{flex:none;display:inline-grid;place-items:center;width:30px;height:30px;border-radius:7px;background:var(--i-accent-tint);color:var(--i-accent);font:800 12px var(--i-font);letter-spacing:.02em}
.ar-tache .ar-doc__ico{width:44px;height:52px;border-radius:8px;font-size:12px}
.ar-bulle{margin:0;padding:10px 14px;border-radius:18px;background:var(--i-fill);white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
.ar-bulle--client{border-bottom-left-radius:6px}
.ar-pieces{list-style:none;margin:0;padding:0}
.ar-pieces li{display:flex;align-items:center;gap:10px;min-height:44px;border-bottom:.5px solid var(--i-sep)}
.ar-pieces li:last-child{border-bottom:0}
.ar-pieces input[type=checkbox]{flex:none;width:22px;height:22px;accent-color:var(--i-accent)}
.ar-pieces label{flex:1;padding:8px 0;cursor:pointer}
.ar-ligne{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding:10px 0;border-bottom:.5px solid var(--i-sep)}
.ar-ligne:last-child{border-bottom:0}
.ar-ligne>div{flex:1 1 220px;min-width:0}
.ar-ligne__titre{font-weight:600;overflow-wrap:anywhere}
.ar-reserve{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:.5px solid var(--i-sep)}
.ar-reserve:last-child{border-bottom:0}
.ar-reserve>div{flex:1;min-width:0}
.ar-visite{padding:10px 0;border-bottom:.5px solid var(--i-sep)}
.ar-visite:last-child{border-bottom:0}
.ar-visite__texte{margin:6px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.ar-vignettes{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}
.ar-vignette{width:76px;height:76px;padding:0;border:0;border-radius:10px;overflow:hidden;background:var(--i-fill);cursor:pointer}
.ar-vignette img{display:block;width:100%;height:100%;object-fit:cover}

/* Choix de fichiers, envoi */
.ar input[type=file]{display:block;max-width:100%;font:15px var(--i-font);color:var(--i-label2);margin:4px 0}
.ar input[type=file]::file-selector-button{min-height:44px;margin:0 10px 0 0;padding:0 14px;border:0;border-radius:11px;background:var(--i-fill);color:var(--i-label);font:600 15px var(--i-font);cursor:pointer}
.ar-choix__boutons{display:flex;flex-wrap:wrap;gap:8px}
.ar-choix__boutons label{position:relative;overflow:hidden;cursor:pointer}
.ar-cache{position:absolute!important;left:0;top:0;width:1px!important;height:1px!important;opacity:0;overflow:hidden}
.ar-choix__nom{margin:6px 0 0;overflow-wrap:anywhere}
.ar-envoi{display:grid;gap:4px;margin:10px 0 0}
.ar-envoi progress,.ar progress{width:100%;height:8px;accent-color:var(--i-accent)}
.ar-collant{position:sticky;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:5;padding:8px 0;background:linear-gradient(transparent,var(--i-bg) 30%)}
@media (min-width:820px){.ar-collant{bottom:84px}}
.ar-indice{margin:4px 0 0;font-size:14px;color:var(--i-orange)}

/* Listes simples, menu Plus */
.ar-profil{display:flex;align-items:center;gap:14px}
.ar-profil b,.ar-profil .ar-petit{display:block}
.ar-menu{list-style:none;margin:12px 0 0;padding:0;background:var(--i-card);border-radius:16px;overflow:hidden;box-shadow:var(--i-shadow)}
.ar-menu li+li{border-top:.5px solid var(--i-sep)}
.ar-menu a,.ar-menu button,.ar-menu__info{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border:0;background:none;font:inherit;text-align:left;color:var(--i-label);text-decoration:none;cursor:pointer}
.ar-menu__info{cursor:default}
.ar-menu b,.ar-menu .ar-petit{display:block}
.ar-menu__ico{flex:none;display:inline-grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--i-accent);color:var(--i-on-accent);font-weight:800}
.ar-menu a>span:nth-child(2),.ar-menu button>span:nth-child(2),.ar-menu__info>span:nth-child(2){flex:1}

/* Mode d'emploi */
.ar-guide{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ar-guide li{display:flex;gap:14px;align-items:flex-start}
.ar-guide__num{flex:none;display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--i-accent);color:var(--i-on-accent);font:800 17px var(--i-font)}
.ar-guide p{margin:4px 0 0;color:var(--i-label2)}

/* États vides, chargement, erreurs */
.ar-vide{color:var(--i-label2)}
.ar-vide--grand{display:grid;justify-items:center;gap:6px;padding:28px 16px;background:var(--i-card);border-radius:16px;box-shadow:var(--i-shadow);margin:12px 0;text-align:center}
.ar-vide--grand b{font-size:19px;color:var(--i-label)}
.ar-vide__ico{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--i-green-tint);color:var(--i-green);font-size:26px;font-weight:800}
.ar-chargement{animation:ar-pulse 1.2s ease-in-out infinite}
@keyframes ar-pulse{50%{opacity:.45}}
.ar-erreur-carte{text-align:center}

/* Fenêtres dans la page */
/* Connexion par e-mail et mot de passe (17/10/2026) */
.ar-connexion{display:grid;gap:12px;margin:18px 0 10px;text-align:left}
.ar-connexion label{display:grid;gap:6px}
.ar-connexion .ar-libelle{margin:0}
.ar-connexion .ar-champ{min-height:48px;font-size:17px}
.ar-connexion .ar-btn--xl{width:100%;margin-top:4px}
.ar-connexion p{margin:0}
.ar-connexion[hidden]{display:none}

.ar-dialogue{border:0;border-radius:18px!important;box-shadow:var(--i-shadow);padding:18px;max-width:min(92vw,440px)!important;width:100%;background:var(--i-card);color:var(--i-label)}
.ar-dialogue::backdrop{background:rgba(0,0,0,.35)}
.ar-dialogue h2{margin:0 0 10px;font-size:20px!important;line-height:1.25!important}
.ar-dialogue p{margin:0 0 12px;line-height:1.45}
.ar-dialogue .ar-zone{min-height:110px}
.ar-dialogue__actions{justify-content:flex-end}
.ar-signature__decl{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;border-radius:12px;background:var(--i-card2);font-size:15px;max-height:40vh;overflow:auto}
.ar-signature__meta{margin:0 0 12px}
.ar-signature__meta dd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600}
/* Signature par code reçu par e-mail (17/10/2026), même déroulé que la page extérieure : recevoir le code, taper les 6 chiffres, signer */
.ar-signature__code{display:grid;gap:8px;margin:0 0 12px}
.ar-signature__code .ar-btn{width:100%;min-height:44px}
.ar-signature__code .ar-libelle{margin:4px 0 0}
.ar-signature__code p{margin:0}
.ar-signature__champ{min-height:48px;max-width:240px;text-align:center;letter-spacing:.25em;font-variant-numeric:tabular-nums}
@media (max-height:700px){.ar-signature__decl{max-height:26vh}}   /* petit iPhone : la fenêtre (déclaration + code) tient à l'écran */
.ar-fichier-dlg{text-align:center}
.ar-fichier__nom{word-break:break-all}
.ar-fichier__actions{display:grid;gap:10px;margin-top:12px}
.ar-lien__url{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px!important}
.ar-toast{bottom:calc(84px + env(safe-area-inset-bottom,0px))!important;z-index:40!important;text-align:center;box-shadow:0 6px 24px rgba(0,0,0,.22)}
@media (max-width:599px){.ar-toast{left:16px!important;right:16px!important;transform:none!important;max-width:none!important}}
@media (min-width:600px){.ar-toast{width:max-content;max-width:520px!important}}

/* Page de signature extérieure (archi-signer.html) : frise des 3 étapes, collante, comme les segments de Conseiller */
.sg .ar-haut{margin-bottom:0}
.sg-frise{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 -16px 12px;padding:8px 16px;position:sticky;top:calc(56px + env(safe-area-inset-top,0px));z-index:10;background:var(--i-bg)}
.sg-frise button{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-width:0;min-height:44px;padding:0 8px;border:0;border-radius:20px;background:var(--i-fill);color:var(--i-label);font:600 15px var(--i-font);cursor:pointer}
.sg-frise button b{flex:none;display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--i-card);color:var(--i-label2);font-size:13px}
.sg-frise button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* case « Je certifie… » : toute la ligne se touche (44 px au moins) */
p.ar-pieces label{display:flex;align-items:flex-start;gap:10px;min-height:44px;padding:8px 0;cursor:pointer}
p.ar-pieces input[type=checkbox]{flex:none;margin:0}
.sg-frise button[aria-current="step"]{background:var(--i-label);color:var(--i-card)}
.sg-frise button[aria-current="step"] b{background:var(--i-accent);color:var(--i-on-accent)}
.sg-frise button.fait b{background:var(--i-green);color:var(--i-on-accent)}
.sg-etape{scroll-margin-top:120px}
.sg-etape h2{display:flex;align-items:center;gap:8px}
.sg-docs{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sg-docs h3{font-size:15px!important;line-height:1.3!important;color:var(--i-label2);margin:10px 0 4px!important}

/* Petits téléphones (iPhone SE, mini, 390 px) : comme Conseiller, prénom et « Quitter » rangés dans Plus ; grand titre un peu plus petit */
@media (max-width:399px){#ar-moi,.ar-quitter{display:none!important}.ar-grand-titre{font-size:28px!important}
  .sg-frise button{gap:4px;padding:0 4px;font-size:13px}}
@media (prefers-reduced-motion:reduce){.ar-chargement{animation:none}.ar-plier summary::after{transition:none}}
.ar-tache__puces{margin:0}
.sg-frise li{list-style:none}
.sg-frise button:disabled{opacity:.5;cursor:default}

/* 10.4 (21/10/2026, finalisation d'Architect) — couleurs du contrat : blanc cassé #f1ede4, anthracite #383e42, rouge profond #8e1b1b.
   Barre du bas à 6 onglets (Clients ajouté), gros boutons de l'accueil, fiche client, nouveau projet, versions, pastille de sauvegarde.
   Zones de toucher ≥ 44 px ; même rendu sur Mac, iPhone et iPad (grille qui passe sur une colonne sous 520 px). */
:root{--q24-casse:#f1ede4;--q24-anthracite:#383e42;--q24-rouge:#8e1b1b}
.ar-barre{grid-template-columns:repeat(6,minmax(0,1fr))}
.ar-barre button{font-size:12px}
@media (max-width:379px){.ar-barre svg{width:23px;height:23px}}
@media (min-width:820px){.ar-barre{width:680px}}
.ar-barre button[hidden]{display:none}
.ar-raccourcis{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}
@media (max-width:519px){.ar-raccourcis{grid-template-columns:1fr}}
.ar-raccourci{display:flex;align-items:center;gap:12px;min-height:72px;padding:14px 16px;border-radius:18px;text-decoration:none;
  background:var(--q24-casse);color:var(--q24-anthracite);border:1.5px solid var(--q24-anthracite);box-shadow:0 1px 3px rgba(0,0,0,.08);-webkit-tap-highlight-color:transparent}
.ar-raccourci b{display:block;font-size:18px;line-height:1.2}
.ar-raccourci small{display:block;font-size:14px;opacity:.8;margin-top:2px}
.ar-raccourci--rouge{background:var(--q24-rouge);border-color:var(--q24-rouge);color:#fff}
.ar-raccourci__ico{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.18);font-size:22px;font-weight:700}
.ar-raccourci:not(.ar-raccourci--rouge) .ar-raccourci__ico{background:var(--q24-anthracite);color:var(--q24-casse)}
.ar-raccourci{touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer;user-select:none;-webkit-user-select:none}
.ar-raccourci *{pointer-events:none}
.ar-raccourci:active{filter:brightness(.94)}
.ar-raccourci:focus-visible{outline:3px solid var(--q24-rouge);outline-offset:2px}
.ar-depart{display:grid;gap:8px}
.ar-depart__carte{display:grid;gap:8px;padding:0 0 4px}
.ar-depart__carte--inactif select{opacity:.45}
.ar-depart__sep{height:10px}
.ar-depart__choix{display:flex;align-items:flex-start;gap:10px;min-height:44px;padding:10px 12px;border-radius:12px;border:1px solid var(--i-sep-strong,#d8d3c8);cursor:pointer}
.ar-depart__choix input{width:22px;height:22px;margin:2px 0 0;accent-color:var(--q24-rouge);flex:none}
.ar-depart__choix b{display:block}
.ar-depart__choix small{display:block;font-size:14px;color:var(--i-label2,#66666b)}
.ar-versions,.ar-echanges{list-style:none;margin:0;padding:0}
.ar-version{padding:10px 0;border-bottom:.5px solid var(--i-sep,#e6e2da)}
.ar-version:last-child{border-bottom:0}
.ar-echanges li{padding:6px 0;border-bottom:.5px solid var(--i-sep,#e6e2da);font-size:15px}
/* Pastille de sauvegarde (js/atelier-synchro.js : monterPastille) */
.q24-synchro{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;min-height:44px;padding:8px 12px;border-radius:14px;background:var(--q24-casse);color:var(--q24-anthracite);
  border:1px solid rgba(56,62,66,.25);font:500 15px/1.3 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif}
.q24-synchro__point{width:12px;height:12px;border-radius:50%;background:#2e7d4f;flex:none}
.q24-synchro__texte{flex:1 1 160px;min-width:0}
.q24-synchro__texte span{opacity:.75}
.q24-synchro__texte small{display:block;font-size:13px;opacity:.85}
.q24-synchro__actions{display:flex;flex-wrap:wrap;gap:8px}
.q24-synchro__actions button{min-height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--q24-anthracite);background:#fff;color:var(--q24-anthracite);font:600 15px/1 inherit;cursor:pointer}
.q24-synchro__actions button:first-child{background:var(--q24-rouge);border-color:var(--q24-rouge);color:#fff}
.q24-synchro[data-etat="en-attente"] .q24-synchro__point{background:#b7791f}
.q24-synchro[data-etat="hors-ligne"] .q24-synchro__point{background:#6b7280}
.q24-synchro[data-etat="modifie"] .q24-synchro__point{background:#b7791f}
.q24-synchro[data-etat="conflit"],.q24-synchro[data-etat="erreur"]{border-color:var(--q24-rouge)}
.q24-synchro[data-etat="conflit"] .q24-synchro__point,.q24-synchro[data-etat="erreur"] .q24-synchro__point{background:var(--q24-rouge)}
@media (prefers-color-scheme:dark){.q24-synchro{background:#2a2e31;color:var(--q24-casse);border-color:rgba(241,237,228,.25)}
  .ar-raccourci:not(.ar-raccourci--rouge){background:#2a2e31;color:var(--q24-casse);border-color:var(--q24-casse)}
  .ar-raccourci:not(.ar-raccourci--rouge) .ar-raccourci__ico{background:var(--q24-casse);color:var(--q24-anthracite)}}
