/* QUALITE 24 — espace client : zone « appli » (onglets, cartes, boutons, « Mes plans ») au style Apple, comme les applis de l'équipe
   (css/q24-ios.css). Limité à .espace-app : l'en-tête et le pied de page du site gardent leur style. Toujours clair, comme le site. */
.espace-app{
  --i-bg:#f2f2f7;--i-card:#ffffff;--i-card2:#f7f7fa;--i-fill:rgba(118,118,128,.12);--i-fill2:rgba(118,118,128,.08);
  --i-label:#1c1c1e;--i-label2:#6c6c70;--i-sep:rgba(60,60,67,.16);
  --i-accent:#b3121d;--i-accent-tint:rgba(179,18,29,.09);--i-on-accent:#ffffff;
  --i-green:#1f7a35;--i-green-tint:rgba(52,199,89,.15);--i-orange:#a64500;--i-orange-tint:rgba(255,149,0,.16);
  --i-shadow:0 1px 2px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.05);
  --i-font:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Helvetica Neue","Segoe UI",Roboto,Arial,sans-serif;
}
/* Onglets, cartes, boutons */
.espace-app{--sans:var(--i-font);font-family:var(--i-font);background:var(--i-bg)}
.espace-app .espace-tabs{gap:6px;padding:6px;border:0;border-radius:14px;background:var(--i-fill2);scrollbar-width:none}
.espace-app .espace-tabs::-webkit-scrollbar{display:none}
.espace-app .espace-tabs button{min-height:36px;padding:0 14px;border:0;border-radius:10px;font:600 15px var(--i-font);color:var(--i-label2)}
.espace-app .espace-tabs button[aria-selected=true]{background:var(--i-card);color:var(--i-label);box-shadow:0 1px 3px rgba(0,0,0,.12);border-bottom-color:transparent}
.espace-app .espace-panel h2{font:700 28px/34px var(--i-font);letter-spacing:.01em}
.espace-app .form-box,.espace-app .carte,.espace-app .tuile,.espace-app .projet,.espace-app .plan-carte{border:0;border-radius:16px;background:var(--i-card);box-shadow:var(--i-shadow)}
.espace-app .btn{min-height:50px;border-radius:12px;font:600 17px var(--i-font)}
.espace-app input,.espace-app select,.espace-app textarea{font-size:17px;border-radius:10px}

/* 10. Onglet « Mes plans » (espace client, appli Architecte) */
.plan-carte{padding:18px;margin:0 0 14px}
.plan-tete{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}
.plan-tete h3{margin:0 0 2px}
.plan-badge{display:inline-block;padding:4px 10px;border-radius:999px;background:var(--i-fill);color:var(--i-label2);font:600 13px var(--i-font);white-space:nowrap}
.plan-carte.statut-envoye .plan-badge{background:var(--i-accent-tint);color:var(--i-accent)}
.plan-carte.statut-valide .plan-badge{background:var(--i-green-tint);color:var(--i-green)}
.plan-carte.statut-a_reprendre .plan-badge{background:var(--i-orange-tint);color:var(--i-orange)}
.plan-message{margin:12px 0;padding:12px 14px;border-radius:12px;background:var(--i-fill2);font-size:15px}
.plan-fichiers{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.plan-fichier{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:12px;background:var(--i-fill);color:var(--i-label);text-decoration:none;font-size:15px}
.plan-fichier small{color:var(--i-label2);font-size:13px}
.plan-fichier-ico{display:inline-grid;place-items:center;min-width:34px;height:22px;border-radius:6px;background:var(--i-accent);color:var(--i-on-accent);font:700 11px var(--i-font)}
.plan-reponse{margin-top:12px;box-shadow:none!important;background:var(--i-card2)!important}
.plan-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.plan-actions .btn{flex:1 1 180px}
.plan-valide{color:var(--i-green);font-weight:600;font-size:15px}
.plan-reprise{color:var(--i-orange);font-size:15px}


/* Textes et champs : police Apple partout dans la zone appli (titres compris), tailles lisibles */
.espace-app h3,.espace-app h4,.plan-carte h3{font-family:var(--i-font);font-weight:600;letter-spacing:0}
.plan-carte h3{font-size:20px;line-height:25px}
.espace-app input,.espace-app select,.espace-app textarea,.espace-app textarea::placeholder,.espace-app input::placeholder{font-family:var(--i-font)}
.plan-reponse label,.plan-reponse .q24e-check{display:block;font-size:15px;color:var(--i-label)}
.plan-reponse .opt{font-size:13px;color:var(--i-label2)}
.plan-reponse textarea,.plan-reponse input:not([type=checkbox]){display:block;width:100%;margin-top:6px;padding:12px 14px;border:0;border-radius:10px;background:var(--i-fill2);font-size:17px}
.plan-reponse .q24e-check{display:flex;gap:10px;align-items:flex-start;margin-top:12px}
.plan-reponse .q24e-check input{width:22px;height:22px;flex:none;margin-top:1px;accent-color:var(--i-accent)}
.plan-reponse .q24e-field-err{display:block;font-size:13px;color:var(--i-accent)}
