/* QUALITE 24 — appli Q24 Compta refaite le 17/10/2026 sur le modèle de l'appli Conseiller : « très professionnelle, très simple ».
   Chargée APRÈS comptable.css et q24-ios.css : barre du bas comme une appli iPhone, écran « Aujourd'hui », fiches en onglets.
   Mêmes valeurs que css/conseiller-app.css (préfixe cp-). Couleurs du thème iOS commun (--i-…), clair et sombre selon le réglage de l'appareil.
   Zones de toucher ≥ 44 px, texte ≥ 13 px. La comptable travaille aussi sur ordinateur : listes en colonnes au-dessus de 900 px. */
.cp{max-width:1080px;margin:0 auto;padding:0 16px calc(96px + env(safe-area-inset-bottom,0px))}
.cp-coque{display:block;min-height:100vh;padding-bottom:0!important}   /* jamais !important sur display : [hidden] doit gagner */
.cp-vue{padding:0!important;max-width:none!important}
.cp-haut{margin:0 -16px 6px;padding-left:16px!important;padding-right:16px!important;gap:10px}
.cp-haut__logo{width:64px}
.cp-haut__titre{display:block;flex:1;margin:0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cp-haut__moi{font-size:15px;gap:8px}
.cp-quitter{min-height:44px;padding:0 6px}
/* BALTA 10.2 (21/10/2026) : sur téléphone (≤ 520 px), le nom de la personne connectée laisse la place au titre de l'écran (il était coupé
   à une lettre, « P.. ») ; « Mes applis » et « Quitter » restent, le titre garde au moins 7 em avant d'être abrégé. */
@media (max-width:520px){
  .cp-haut #cp-moi{display:none}
  .cp-haut__titre{min-width:7em;font-size:16px}
  .cp-haut__moi{gap:4px;flex:none}
  .cp-haut .mes-applis-bouton{margin-right:0;padding:6px 10px}
}
.cp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cp-centre{text-align:center}
.cp-espace{margin-top:10px!important}
.cp-petit{font-size:14px;margin-top:0;color:var(--i-label2)}
.cp-texte{color:var(--i-label2)}
.cp-surtitre{font-size:13px;letter-spacing:.06em}
.cp-vue h2{margin:0 0 10px}
.cp-num{font-variant-numeric:tabular-nums;text-align:right}
a{color:var(--i-blue)}

/* Connexion */
.cp-accueil{min-height:88vh;padding:24px 0}
.cp-accueil__carte{gap:10px}
.cp-accueil__carte h1{margin:0}
.cp-btn--xl{width:100%;min-height:52px;font-size:17px}
.cp-accueil .cp-erreur{margin-top:4px}
/* Connexion par e-mail et mot de passe (17/10/2026 : plus de Face ID). Champs à 17 px : pas de zoom sur iPhone. */
.cp-connexion{display:grid;gap:12px;margin:8px 0 4px;text-align:left}
.cp-connexion label{display:grid;gap:6px}
.cp-connexion .cp-libelle{margin:0}
.cp-connexion .cp-champ{min-height:48px!important;font-size:17px}
.cp-connexion .cp-btn--xl{width:100%;margin-top:4px}
.cp-connexion .cp-petit{margin:0}
.cp-connexion[hidden]{display:none}

/* Barre du bas (5 onglets) */
.cp-barre{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(5,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)}
.cp-barre button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;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}
.cp-barre svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cp-barre button[aria-current="true"]{color:var(--i-accent)}
.cp-barre button[aria-current="true"] svg{stroke-width:2.1}
.cp-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}
.cp-barre button:focus-visible{outline:2px solid var(--i-accent);outline-offset:-2px;border-radius:12px}
@media (min-width:820px){.cp-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 */
.cp-grand-titre{font:700 32px/1.15 var(--i-font)!important;letter-spacing:.005em;margin:8px 0 4px}
.cp-entete{margin:6px 0 14px}
.cp-entete__date{margin:0;font:600 13px/1.2 var(--i-font);letter-spacing:.06em;text-transform:uppercase;color:var(--i-label2)}
.cp-entete__sous{margin:2px 0 0;color:var(--i-label2);font-size:16px}
.cp-entete__sous b{color:var(--i-accent)}
.cp-entete__claude{margin-top:4px}
.cp-retour{margin:6px 0 4px}
.cp-aide-statut{margin:0 0 10px}

/* Chiffres du jour */
.cp-chiffres{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:0 0 12px}
@media (min-width:640px){.cp-chiffres{grid-template-columns:repeat(4,1fr)}}
button.cp-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);min-height:76px}
button.cp-chiffre b{display:block;font-size:28px;line-height:1.1}
button.cp-chiffre span{display:block;font-size:13px;color:var(--i-label2)}
button.cp-chiffre.alerte b{color:var(--i-accent)}
button.cp-chiffre.ok b{color:var(--i-green)}
button.cp-chiffre:focus-visible{outline:2px solid var(--i-accent);outline-offset:2px}
.cp-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 */
.cp-section{margin:20px 0 6px}
.cp-section__titre{display:flex;align-items:center;gap:8px;font:700 20px/1.2 var(--i-font)!important;margin:0 0 8px!important}
.cp-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}
.cp-section__aide{margin:-2px 0 10px;color:var(--i-label2);font-size:15px}
.cp-taches{list-style:none;margin:0;padding:0;display:grid;gap:10px}
@media (min-width:900px){.cp-taches{grid-template-columns:repeat(auto-fill,minmax(440px,1fr));align-items:start}}
.cp-tache{background:var(--i-card);border-radius:16px;box-shadow:var(--i-shadow);padding:14px;display:grid;gap:8px}
.cp-tache__tete{display:flex;align-items:center;gap:12px}
.cp-tache__titre{flex:1;min-width:0}
.cp-tache__titre b{display:block;font-size:17px;overflow-wrap:anywhere}
.cp-tache__titre .cp-petit{display:block}
.cp-tache__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cp-tache__note{flex:1 1 200px}
.cp-code{flex:none;display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--i-accent-tint);color:var(--i-accent);font:800 13px/1 var(--i-font);letter-spacing:.02em}
.cp-montant{flex:none;font-size:17px;font-variant-numeric:tabular-nums;white-space:nowrap}
.cp-montant--entree{color:var(--i-green)}
.cp-raison{margin:0;font-size:15px;color:var(--i-label2);overflow-wrap:anywhere}
.cp-raison b{color:var(--i-violet);font-weight:600}
.cp-props{list-style:none;margin:0;padding:8px 10px;border-radius:12px;background:var(--i-card2);display:grid;gap:6px}
.cp-props li{display:grid;grid-template-columns:auto 1fr auto auto;gap:4px 10px;align-items:baseline;font-size:15px}
.cp-props__compte{font-weight:700;font-variant-numeric:tabular-nums}
.cp-props__nom{color:var(--i-label2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-props__sens{font-size:13px;color:var(--i-label2)}
.cp-props__montant{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.cp-depot h2{font-size:19px!important;line-height:1.25!important}
.cp-depot .cp-petit{margin:0 0 12px}

/* Boutons */
.cp-btn{background:var(--i-fill)!important;border:0!important;color:var(--i-label);text-decoration:none;padding:0 16px}
.cp-btn--petit{min-height:44px!important;font-size:15px!important;padding:0 14px;border-radius:11px!important}
.cp-btn--rouge{background:var(--i-accent)!important;color:var(--i-on-accent)!important}
.cp-btn--vert{background:var(--i-green)!important;color:var(--i-on-accent)!important}
.cp-btn--danger{background:var(--i-accent)!important;color:var(--i-on-accent)!important}
.cp-btn--orange{background:var(--i-orange-tint)!important;color:var(--i-orange)!important}
.cp-btn--lien{background:transparent!important;color:var(--i-accent)!important;padding:0 8px}
.cp-btn--plein{width:100%;margin:18px 0 8px}
.cp-btn:disabled{opacity:.45;cursor:default}
.cp-btn:focus-visible,a:focus-visible{outline:2px solid var(--i-accent);outline-offset:2px}
.cp-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}
.cp-actions--pile{display:grid;grid-template-columns:1fr;gap:8px}
@media (min-width:640px){.cp-actions--pile{display:flex}}

/* Badges (même famille que Conseiller) */
.cp-badge{display:inline-block;font-size:13px!important;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--i-fill);color:var(--i-label2);margin:2px 4px 2px 0;white-space:nowrap;
  max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}   /* longue référence de TVA : coupée, jamais de défilement de côté */
.cp-badge--orange{background:var(--i-orange-tint);color:var(--i-orange)}
.cp-badge--bleu{background:var(--i-blue-tint);color:var(--i-blue)}
.cp-badge--vert{background:var(--i-green-tint);color:var(--i-green)}
.cp-badge--violet{background:var(--i-violet-tint);color:var(--i-violet)}
.cp-badge--rouge{background:var(--i-accent-tint);color:var(--i-accent)}
.cp-badge--gris{background:var(--i-fill);color:var(--i-label2)}

/* Avatars, cartes */
.cp-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}
.cp-avatar--grand{width:58px;height:58px;font-size:21px}
.cp-carte{padding:14px 16px;margin:0 0 12px}
.cp-erreur-carte .cp-erreur{margin:0 0 10px}

/* Recherche, filtres, mois */
.cp-recherche{display:block;width:100%;min-height:46px;padding:0 14px;margin:4px 0 10px;border:0;border-radius:12px;background:var(--i-fill2);color:var(--i-label);font:17px var(--i-font)}
.cp-recherche:focus{outline:2px solid var(--i-accent);outline-offset:0}
.cp-filtres{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 -16px 12px;padding:0 16px 2px}
.cp-filtres::-webkit-scrollbar{display:none}
.cp-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}
.cp-filtres button span{color:var(--i-label2);font-weight:600}
.cp-filtres button[aria-pressed="true"]{background:var(--i-label);color:var(--i-card)}
.cp-filtres button[aria-pressed="true"] span{color:var(--i-card);opacity:.7}
.cp-filtres button:focus-visible{outline:2px solid var(--i-accent);outline-offset:2px}
.cp-outils{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 10px}
.cp-outils__mois{flex:1 1 200px;max-width:320px}
.cp-select{display:block;width:100%;min-height:44px;padding:0 36px 0 14px;border:0;border-radius:12px;background:var(--i-fill);color:var(--i-label);font:600 15px var(--i-font);
  -webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--i-label2) 50%),linear-gradient(135deg,var(--i-label2) 50%,transparent 50%);
  background-position:calc(100% - 18px) 52%,calc(100% - 13px) 52%;background-size:5px 5px;background-repeat:no-repeat;cursor:pointer}
.cp-select:focus-visible{outline:2px solid var(--i-accent);outline-offset:2px}
.cp-liste__compte{margin:0 0 6px}
.cp-chevron{flex:none;align-self:center;color:var(--i-label3);font-size:24px;line-height:1}

/* Écritures : cartes sur téléphone, colonnes au-dessus de 900 px */
.cp-ecrs,.cp-bqs,.cp-jcs,.cp-regles,.cp-mois-liste{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.cp-ecrs__tete,.cp-bqs__tete{display:none}
.cp-ecr{display:grid;grid-template-columns:1fr auto;grid-template-areas:"lib montant" "journal date" "etat etat";gap:2px 12px;padding:12px 14px;border-radius:14px;background:var(--i-card);box-shadow:var(--i-shadow);color:var(--i-label);text-decoration:none}
.cp-ecr__lib{grid-area:lib;min-width:0}
.cp-ecr__lib b{display:block;font-size:17px;overflow-wrap:anywhere}
.cp-ecr__lib small,.cp-ecr__journal small{display:block;font-size:14px;color:var(--i-label2)}
.cp-ecr__montant{grid-area:montant;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.cp-ecr__journal{grid-area:journal;font-size:14px;color:var(--i-label2)}
.cp-ecr__journal small{display:inline;margin-left:6px}
.cp-ecr__date{grid-area:date;font-size:14px;color:var(--i-label2);text-align:right;white-space:nowrap}
.cp-ecr__etat{grid-area:etat;margin-top:2px}
.cp-ecr:focus-visible{outline:2px solid var(--i-accent);outline-offset:2px}
.cp-bq{display:grid;grid-template-columns:1fr auto;grid-template-areas:"lib montant" "date montant2" "etat etat";gap:2px 12px;padding:12px 14px;border-radius:14px;background:var(--i-card);box-shadow:var(--i-shadow)}
.cp-bq__lib{grid-area:lib;font-weight:600;overflow-wrap:anywhere}
.cp-bq__date{grid-area:date;font-size:14px;color:var(--i-label2)}
.cp-bq__sortie{grid-area:montant;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.cp-bq__entree{grid-area:montant2;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;color:var(--i-green)}
.cp-bq__etat{grid-area:etat;display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:6px}
@media (min-width:900px){
  .cp-ecrs,.cp-bqs{gap:0;background:var(--i-card);border-radius:16px;box-shadow:var(--i-shadow);overflow:hidden}
  .cp-ecrs__tete,.cp-ecr{display:grid;grid-template-columns:118px 170px minmax(0,1fr) 130px 220px;grid-template-areas:"date journal lib montant etat";align-items:start}
  .cp-bqs__tete,.cp-bq{display:grid;grid-template-columns:118px minmax(0,1fr) 130px 130px 290px;grid-template-areas:"date lib montant montant2 etat";align-items:start}
  .cp-ecrs__tete,.cp-bqs__tete{gap:12px;padding:10px 14px;background:var(--i-card2);font:600 13px var(--i-font);letter-spacing:.04em;text-transform:uppercase;color:var(--i-label2)}
  .cp-ecrs__tete span:nth-child(4),.cp-bqs__tete span:nth-child(3),.cp-bqs__tete span:nth-child(4){text-align:right}
  .cp-ecr,.cp-bq{gap:12px;border-radius:0;box-shadow:none;border-top:.5px solid var(--i-sep)}
  .cp-ecr:hover{background:var(--i-fill2)}
  .cp-ecr__date{text-align:left;color:var(--i-label)}
  .cp-ecr__journal{color:var(--i-label)}
  .cp-ecr__journal small{display:block;margin:0}
  .cp-ecr__etat,.cp-bq__etat{margin:0}
  .cp-ecr__lib b{font-size:16px}
  .cp-bq__date{color:var(--i-label)}
}

/* Fiches : en-tête et onglets collants */
.cp-fiche__titre{font-size:26px!important;line-height:1.15!important;margin:2px 0!important;overflow-wrap:anywhere}
.cp-fiche__montant{margin:2px 0 4px;font:700 22px/1.2 var(--i-font);font-variant-numeric:tabular-nums}
.cp-fiche__badges{margin:0 0 4px}
.cp-fiche__aide{margin-top:6px}
.cp-fiche .cp-raison{margin-top:6px}
.cp-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)}
.cp-seg::-webkit-scrollbar{display:none}
.cp-seg a{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:18px;background:var(--i-fill);color:var(--i-label);font:600 15px var(--i-font);text-decoration:none}
.cp-seg a[aria-current="true"]{background:var(--i-label);color:var(--i-card)}
.cp-seg a i{font-style:normal;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--i-accent);color:var(--i-on-accent);font-size:13px;line-height:19px;text-align:center}   /* texte ≥ 13 px (seule exception : la barre du bas) */
.cp-infos{display:grid;grid-template-columns:minmax(120px,40%) 1fr;gap:8px 12px;margin:0}
.cp-infos dt{color:var(--i-label2);font-size:15px}
.cp-infos dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.cp-plier summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between}
.cp-plier summary::-webkit-details-marker{display:none}
.cp-plier summary::after{content:"›";font-size:24px;color:var(--i-label3);transform:rotate(90deg);transition:transform .2s}
.cp-plier[open] summary::after{transform:rotate(-90deg)}
.cp-plier summary h2{margin:0!important}
.cp-plier[open] summary{margin-bottom:10px}

/* Lignes d'une écriture : mini-cartes sur téléphone, colonnes sur ordinateur */
.cp-lignes{display:grid;gap:8px}
.cp-lignes__tete{display:none}
.cp-ligne-e{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"compte compte" "tiers tiers" "d c";gap:6px 10px;padding:12px;border-radius:12px;background:var(--i-card2)}
.cp-ligne-e__compte{grid-area:compte;position:relative;padding-right:40px}
.cp-ligne-e__tiers{grid-area:tiers;font-size:15px}
.cp-ligne-e__tiers .cp-libelle{display:inline;margin-right:6px}
.cp-ligne-e__d{grid-area:d}
.cp-ligne-e__c{grid-area:c}
.cp-ligne-e__suppr{position:absolute;top:6px;right:4px;min-height:44px!important;min-width:44px;font-size:18px!important;color:var(--i-label2)!important}
.cp-ligne-e__nom{display:block;min-height:18px;margin-top:3px;font-size:14px;color:var(--i-label2)}
.cp-ligne-e--lecture .cp-ligne-e__compte{padding-right:0}
.cp-ligne-e--lecture .cp-num{display:block;font-weight:600;text-align:left}
.cp-libelle{display:block;font-size:13px;font-weight:600;color:var(--i-label2);margin:0 0 4px}
.cp-champ{width:100%;min-height:44px!important;padding:8px 12px!important}
.cp-champ[aria-invalid="true"]{outline:2px solid var(--i-accent)!important;outline-offset:0}
.cp-zone{width:100%;min-height:96px;padding:10px 12px;border:0;border-radius:10px;background:var(--i-fill2);color:var(--i-label);font:17px/1.4 var(--i-font);resize:vertical}
.cp-zone:focus{outline:2px solid var(--i-accent);outline-offset:0}
.cp-grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.cp-champ-compte{position:relative}
.cp-sugg{position:absolute;left:0;right:0;top:calc(100% - 18px);z-index:15;background:var(--i-card);border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.18);overflow:hidden}
.cp-ligne-e__compte .cp-sugg{right:40px}
.cp-sugg ul{list-style:none;margin:0;padding:4px 0;max-height:280px;overflow-y:auto}
.cp-sugg button{display:block;width:100%;min-height:44px;padding:8px 14px;border:0;background:none;color:var(--i-label);font:15px var(--i-font);text-align:left;cursor:pointer}
.cp-sugg button b{font-variant-numeric:tabular-nums;margin-right:6px}
.cp-sugg button:hover,.cp-sugg button:focus{background:var(--i-fill2);outline:0}
@media (min-width:900px){
  .cp-lignes{gap:0}
  .cp-lignes__tete,.cp-ligne-e{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) 150px 150px 48px;grid-template-areas:"compte tiers d c x";gap:10px;align-items:start}
  .cp-lignes__tete{padding:0 12px 6px;font:600 13px var(--i-font);letter-spacing:.04em;text-transform:uppercase;color:var(--i-label2)}
  .cp-lignes__tete span:nth-child(3),.cp-lignes__tete span:nth-child(4){text-align:right}
  .cp-ligne-e{border-radius:0;background:none;border-top:.5px solid var(--i-sep);padding:10px 12px}
  .cp-ligne-e .cp-libelle{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .cp-ligne-e__compte{padding-right:0}
  .cp-ligne-e__compte .cp-sugg{right:0}
  .cp-ligne-e__tiers{padding-top:11px}
  .cp-ligne-e__d .cp-champ,.cp-ligne-e__c .cp-champ{text-align:right}
  .cp-ligne-e--lecture .cp-num{text-align:right;padding-top:2px}
  .cp-ligne-e__suppr{position:static;grid-area:x}
}
.cp-totaux{position:sticky;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:12;display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center;margin:0 0 12px;padding:10px 14px;
  border-radius:14px;background:var(--i-bar);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);box-shadow:0 2px 12px rgba(0,0,0,.08);font-variant-numeric:tabular-nums}
@media (min-width:820px){.cp-totaux{bottom:84px}}
.cp-totaux__etat{font-weight:700}
.cp-totaux__etat.ok{color:var(--i-green)}
.cp-totaux__etat.ko{color:var(--i-accent)}
.cp-quefaire h2{margin-bottom:8px}

/* TVA */
.cp-mois-carte{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:center;padding:14px;border-radius:16px;background:var(--i-card);box-shadow:var(--i-shadow);color:var(--i-label);text-decoration:none}
.cp-mois-carte>*{min-width:0}
.cp-mois-carte__haut{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;align-items:baseline}
.cp-mois-carte__haut b{font-size:17px}
.cp-mois-carte__badges{grid-column:1}
.cp-mois-carte .cp-chevron{grid-row:1/3;grid-column:2}
.cp-mois-carte:focus-visible{outline:2px solid var(--i-accent);outline-offset:2px}
.cp-gros-montant{margin:2px 0 8px;font:700 34px/1.1 var(--i-font);font-variant-numeric:tabular-nums}
.cp-tva{list-style:none;margin:0;padding:0}
.cp-tva li{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"lib lib" "base tva";gap:2px 10px;padding:10px 0;border-top:.5px solid var(--i-sep)}
.cp-tva li:first-child{border-top:0}
.cp-tva__lib{grid-area:lib;font-weight:600}
.cp-tva__base{grid-area:base;color:var(--i-label2);font-variant-numeric:tabular-nums}
.cp-tva__tva{grid-area:tva;text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.cp-tva small{font-size:13px;color:var(--i-label2);font-weight:400;margin-right:4px}
.cp-tva__total{font-size:18px}
.cp-tva__total .cp-tva__tva{font-weight:800}
@media (min-width:640px){.cp-tva li{grid-template-columns:minmax(0,1fr) 160px 160px;grid-template-areas:"lib base tva"}.cp-tva__base{text-align:right}}
.cp-limite,.cp-ok{margin:8px 0 0;padding:10px 12px;border-radius:12px;font-size:15px;font-weight:600}
.cp-limite{background:var(--i-orange-tint);color:var(--i-orange)}
.cp-limite ul{margin:6px 0 0;padding-left:18px;font-weight:400}

/* Plus : profil, menu, journal de Claude, règles, plan comptable */
.cp-profil{display:flex;align-items:center;gap:14px}
.cp-profil b,.cp-profil .cp-petit{display:block}
.cp-menu{list-style:none;margin:12px 0 0;padding:0;background:var(--i-card);border-radius:16px;overflow:hidden;box-shadow:var(--i-shadow)}
.cp-menu li+li{border-top:.5px solid var(--i-sep)}
.cp-menu a,.cp-menu__info{display:flex;align-items:center;gap:12px;padding:14px;color:var(--i-label);text-decoration:none;min-height:52px}
.cp-menu b,.cp-menu .cp-petit{display:block}
.cp-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}
.cp-menu a>span:nth-child(2),.cp-menu__info>span:nth-child(2){flex:1}
.cp-menu a>span:first-child:not(.cp-menu__ico){flex:1}
.cp-section .cp-menu{margin-top:0}
.cp-comptes .cp-menu__info{min-height:48px;padding:10px 14px}
.cp-comptes__num{font-variant-numeric:tabular-nums;min-width:64px}
.cp-jc{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:var(--i-card);box-shadow:var(--i-shadow);color:var(--i-label);text-decoration:none}
.cp-jc__corps{flex:1;min-width:0;display:grid;gap:2px}
.cp-jc__haut{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.cp-jc__raison{font-size:15px;color:var(--i-label2);overflow-wrap:anywhere}
.cp-jc:focus-visible{outline:2px solid var(--i-accent);outline-offset:2px}
.cp-regle{padding:12px 14px;border-radius:14px;background:var(--i-card);box-shadow:var(--i-shadow)}
.cp-regle__pour{margin:0 0 4px;overflow-wrap:anywhere}
.cp-regle__badges{margin:0}
.cp-interrupteur{display:flex;align-items:center;gap:10px;margin:12px 0 4px;min-height:44px;cursor:pointer}
.cp-interrupteur input{flex:none;width:22px;height:22px;accent-color:var(--i-accent)}

/* Mode d'emploi */
.cp-guide{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cp-guide li{display:flex;gap:14px;align-items:flex-start}
.cp-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)}
.cp-guide p{margin:4px 0 0;color:var(--i-label2)}

/* Historique */
.cp-fil{list-style:none;margin:0;padding:0}
.cp-fil li{padding:10px 0;border-bottom:.5px solid var(--i-sep)}
.cp-fil li:last-child{border-bottom:0}
.cp-fil__meta{font-size:13px;color:var(--i-label2)}
.cp-fil__texte{margin:2px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}

/* États vides, chargement, erreurs */
.cp-vide{text-align:center;color:var(--i-label2);padding:24px}
.cp-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}
.cp-vide--grand b{font-size:19px;color:var(--i-label)}
.cp-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}
.cp-vide__ico--gris{background:var(--i-fill);color:var(--i-label2)}
.cp-chargement{animation:cp-pulse 1.2s ease-in-out infinite}
@keyframes cp-pulse{50%{opacity:.45}}

/* Fenêtres, toast, progression */
.cp-dialogue{border:0;padding:18px;background:var(--i-card);color:var(--i-label);border-radius:18px!important;box-shadow:0 12px 40px rgba(0,0,0,.25);max-width:min(92vw,440px)!important;width:100%}
.cp-dialogue::backdrop{background:rgba(0,0,0,.35)}
.cp-dialogue p{margin:0 0 12px;line-height:1.45}
.cp-dialogue__note{font-weight:700;color:var(--i-accent)}
.cp-dialogue label{display:block;margin:0 0 4px}
.cp-dialogue .cp-erreur{margin:8px 0 0}
.cp-dialogue__actions{justify-content:flex-end;margin-top:14px}
.cp-doc{text-align:center}
.cp-doc__nom{word-break:break-all}
.cp-doc__note{margin-top:8px!important}
.cp-doc__actions{display:grid;gap:10px;margin-top:12px}
.cp-toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:40;max-width:min(92vw,520px);padding:12px 16px;border-radius:14px;
  background:var(--i-label);color:var(--i-card);font-size:15px;box-shadow:0 6px 24px rgba(0,0,0,.2)}
.cp-toast.erreur{background:var(--i-accent);color:var(--i-on-accent)}
@media (min-width:820px){.cp-toast{bottom:96px}}
@media (max-width:599px){.cp-toast{left:16px;right:16px;transform:none;max-width:none;text-align:center}}
.cp-progres{position:fixed;left:50%;top:calc(66px + env(safe-area-inset-top,0px));transform:translateX(-50%);z-index:40;display:grid;gap:6px;width:min(92vw,420px);padding:12px 14px;border-radius:14px;
  background:var(--i-card);color:var(--i-label);box-shadow:0 6px 24px rgba(0,0,0,.18);font-size:15px}
.cp-progres progress{width:100%;height:8px;accent-color:var(--i-accent)}
/* Petits téléphones (iPhone SE, mini), comme Conseiller : titre du haut sur une ligne, prénom et « Quitter » rangés dans Plus (« Se déconnecter ») */
@media (max-width:399px){
  #cp-moi,.cp-quitter{display:none!important}
  .cp-grand-titre{font-size:28px!important}
}
@media (prefers-reduced-motion:reduce){.cp-chargement{animation:none}.cp-plier summary::after{transition:none}}
