/* ====================================================================
   CADIXEL — compte.css
   Styles de l'espace compte : connexion, inscription, tableau de bord.
   Réutilise les variables de marque définies dans style.css (--menthe,
   --bleu, --gris, --police-*), chargé sur toutes les pages du thème.
   ==================================================================== */

.cadixel-page-compte,
.cadixel-page-dashboard{
  margin:0;
  background:var(--fond, #F2FAF6);
  font-family:var(--police-texte, 'Inter', sans-serif);
  color:var(--gris-700, #414B46);
  -webkit-font-smoothing:antialiased;
}

/* ==== Connexion / inscription : carte centrée ==== */
.cadixel-page-compte{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}

.compte-carte{
  width:400px;
  max-width:100%;
  background:#fff;
  border-radius:18px;
  border:1px solid var(--gris-200, #DCE6E1);
  box-shadow:0 24px 60px -20px rgba(20,30,26,0.22);
  padding:34px 32px;
}

.compte-logo{ height:30px; width:auto; display:block; margin-bottom:22px; }

.compte-carte h1{
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:20px;
  font-weight:700;
  color:var(--gris-900, #232B27);
  margin:0 0 6px;
}

.compte-sous-titre{ font-size:13px; color:var(--gris-500, #8B9A93); margin:0 0 20px; }

.compte-erreur{
  font-size:13px;
  color:#8A2C1E;
  background:#F7DDD7;
  border-radius:8px;
  padding:10px 12px;
  margin:0 0 16px;
}

.compte-champ{ margin-bottom:14px; }
.compte-champ label{
  display:block;
  font-size:12px;
  font-weight:600;
  color:var(--gris-700, #414B46);
  margin-bottom:6px;
}
.compte-champ input{
  width:100%;
  height:42px;
  padding:0 14px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  border-radius:9px;
  background:var(--fond, #F2FAF6);
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:13.5px;
  color:var(--gris-900, #232B27);
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.compte-champ input:focus{
  border-color:var(--menthe-500, #3EB489);
  box-shadow:0 0 0 4px var(--menthe-100, #D9F5E9);
}

.compte-champ-case{
  display:flex;
  align-items:center;
  gap:8px;
  margin:-4px 0 14px;
}
.compte-champ-case input[type="checkbox"]{ width:16px; height:16px; flex:none; accent-color:var(--menthe-500, #3EB489); cursor:pointer; }
.compte-champ-case label{ font-size:12.5px; font-weight:500; color:var(--gris-700, #414B46); cursor:pointer; margin:0; }

.compte-bouton{
  width:100%;
  height:44px;
  margin-top:6px;
  border:none;
  border-radius:9px;
  background:var(--menthe-600, #2FA278);
  color:#fff;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:13.5px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 14px 24px -12px rgba(47,162,120,.45);
  transition:background .15s ease, box-shadow .15s ease, transform .15s ease;
}
.compte-bouton:hover{ background:var(--menthe-700, #278363); transform:translateY(-1px); }

.compte-lien{ font-size:12.5px; color:var(--gris-500, #8B9A93); margin:14px 0 0; text-align:center; }
.compte-lien a{ color:var(--menthe-600, #2FA278); font-weight:600; text-decoration:none; }
.compte-lien a:hover{ color:var(--menthe-700, #278363); }

/* ==== Tableau de bord ==== */
/* Hauteur fixée à 100% de la fenêtre (et non min-height) : la coquille
   ne dépasse jamais le viewport, c'est le contenu qui défile à
   l'intérieur — la sidebar reste ainsi entièrement visible. */
.dashboard{ display:flex; height:100vh; overflow:hidden; }

.dashboard-barre{
  flex:none;
  width:236px;
  height:100%;
  box-sizing:border-box;
  background:#fff;
  border-right:1px solid var(--gris-200, #DCE6E1);
  display:flex;
  flex-direction:column;
  padding:22px 16px;
  overflow-y:auto;
}

.dashboard-marque{ margin-bottom:22px; }
.dashboard-marque-badge{
  display:inline-flex;
  align-items:center;
  background:linear-gradient(115deg, var(--menthe-500, #3EB489) 0%, var(--bleu-500, #66A8FF) 58%, var(--violet-500, #AAA5F5) 100%);
  border-radius:8px;
  padding:7px 13px;
  line-height:0;
}
.dashboard-marque-badge img{ height:26px; width:auto; display:block; }

.dashboard-nav{ display:flex; flex-direction:column; gap:2px; }

.dashboard-nav-item{
  display:flex;
  align-items:center;
  gap:11px;
  padding:10px 12px;
  border-radius:9px;
  font-size:13.5px;
  font-weight:500;
  color:var(--gris-700, #414B46);
  text-decoration:none;
  transition:background .15s ease, color .15s ease;
}
.dashboard-nav-icone{ flex:none; }
a.dashboard-nav-item:hover{ background:var(--fond, #F2FAF6); color:var(--menthe-700, #278363); }
.dashboard-nav-item.est-actif{
  background:linear-gradient(90deg, rgba(62,180,137,.20), rgba(102,168,255,.13) 70%, rgba(170,165,245,.10));
  color:var(--menthe-700, #278363);
  font-weight:600;
}

/* Section « Avec une offre supérieure » : items non cliquables, regroupés
   sous un intitulé dédié, avec icône de cadenas — remplace l'ancien style
   .dashboard-nav-item-inerte (un seul item mêlé à la liste). */
.dashboard-nav-groupe-titre{
  margin:12px 6px 8px;
  font-size:10.5px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--gris-500, #8B9A93);
}
.dashboard-nav-separateur{ height:1px; background:var(--gris-200, #DCE6E1); margin:14px 6px; }
.dashboard-nav-item-verrou{
  color:var(--gris-500, #8B9A93);
  cursor:default;
}
.dashboard-nav-item-verrou .dashboard-nav-icone{ opacity:.75; }
.dashboard-nav-cadenas{ margin-left:auto; flex:none; opacity:.6; }

.dashboard-stockage-mini{
  margin-top:auto;
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:12px;
  padding:14px 15px;
  background:var(--fond, #F2FAF6);
}
.dashboard-stockage-entete{
  display:flex;
  justify-content:space-between;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:11.5px;
  font-weight:700;
  color:var(--gris-900, #232B27);
  margin-bottom:9px;
}
.dashboard-stockage-mini p{
  margin:8px 0 0;
  font-family:var(--police-mono, monospace);
  font-size:10.5px;
  color:var(--gris-500, #8B9A93);
}

.dashboard-barre-progression{
  height:5px;
  border-radius:3px;
  background:var(--gris-200, #DCE6E1);
  overflow:hidden;
}
.dashboard-barre-progression > div{
  height:100%;
  background:linear-gradient(90deg, var(--menthe-500, #3EB489), var(--bleu-500, #66A8FF));
  border-radius:3px;
}

.dashboard-contenu{ flex:1; min-width:0; height:100%; box-sizing:border-box; padding:32px 40px; overflow-y:auto; }

.dashboard-entete{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
  margin-bottom:26px;
}
.dashboard-entete h1{
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:31px;
  font-weight:700;
  line-height:1.14;
  letter-spacing:-0.01em;
  color:var(--gris-900, #232B27);
  margin:0 0 10px;
}
.dashboard-entete-accent{
  background:linear-gradient(90deg, var(--menthe-500, #3EB489) 0%, var(--bleu-500, #66A8FF) 60%, var(--violet-500, #AAA5F5) 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
}
.dashboard-entete-filet{
  width:52px;
  height:3px;
  border-radius:2px;
  background:linear-gradient(90deg, var(--menthe-500, #3EB489), var(--bleu-500, #66A8FF) 62%, var(--violet-500, #AAA5F5));
  margin:0 0 12px;
}
.dashboard-entete p{ margin:0; font-size:13.5px; color:var(--gris-500, #8B9A93); }
.dashboard-entete-actions{ display:flex; align-items:center; gap:12px; }

/* ==== Menu utilisateur (remplace l'ancien lien direct « Se déconnecter ») ==== */
.dashboard-menu-utilisateur{ position:relative; flex:none; }
.dashboard-menu-utilisateur-bouton{
  display:flex;
  align-items:center;
  gap:10px;
  height:42px;
  padding:0 12px 0 6px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  background:#fff;
  border-radius:9px;
  cursor:pointer;
  transition:border-color .15s ease;
}
.dashboard-menu-utilisateur-bouton:hover{ border-color:var(--menthe-500, #3EB489); }
.dashboard-menu-utilisateur-avatar{
  width:30px;
  height:30px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--menthe-500, #3EB489), var(--bleu-500, #66A8FF) 58%, var(--violet-500, #AAA5F5));
  color:#fff;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:12px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:none;
}
.dashboard-menu-utilisateur-nom{ font-size:13px; font-weight:600; color:var(--gris-900, #232B27); }
.dashboard-menu-utilisateur-panneau{
  position:absolute;
  top:50px;
  right:0;
  width:236px;
  max-width:calc(100vw - 32px);
  background:#fff;
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:14px;
  box-shadow:0 30px 60px -30px rgba(20,30,26,0.28);
  padding:8px;
  z-index:50;
}
.dashboard-menu-utilisateur-entete{
  padding:10px 11px 12px;
  border-bottom:1px solid var(--gris-200, #DCE6E1);
  margin-bottom:6px;
}
.dashboard-menu-utilisateur-panneau-nom{ margin:0 0 3px; font-family:var(--police-titre, 'Comfortaa', sans-serif); font-size:13px; font-weight:700; color:var(--gris-900, #232B27); }
.dashboard-menu-utilisateur-panneau-email{ margin:0; font-family:var(--police-mono, monospace); font-size:10.5px; color:var(--gris-500, #8B9A93); }
.dashboard-menu-utilisateur-lien{
  display:block;
  width:100%;
  padding:9px 11px;
  border:none;
  background:transparent;
  border-radius:9px;
  font-size:13px;
  font-weight:500;
  color:var(--gris-700, #414B46);
  text-decoration:none;
  box-sizing:border-box;
}
.dashboard-menu-utilisateur-lien:hover{ background:var(--fond, #F2FAF6); }
.dashboard-menu-utilisateur-lien-deconnexion{ color:var(--cerise-500, #C23F2E); }
.dashboard-menu-utilisateur-lien-deconnexion:hover{ background:var(--cerise-100, #F7DDD7); color:var(--cerise-500, #C23F2E); }

/* ==== Centre de notifications (LOT M) — même langage visuel que le menu
   utilisateur ci-dessus (bouton, panneau, ombre, rayon). ==== */
.dashboard-notifications{ position:relative; flex:none; }
.dashboard-notifications-bouton{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  background:#fff;
  border-radius:9px;
  color:var(--gris-700, #414B46);
  cursor:pointer;
  transition:border-color .15s ease;
}
.dashboard-notifications-bouton:hover{ border-color:var(--menthe-500, #3EB489); }
.dashboard-notifications-badge{
  position:absolute;
  top:-6px;
  right:-6px;
  min-width:18px;
  height:18px;
  padding:0 4px;
  border-radius:999px;
  background:var(--cerise-500, #C23F2E);
  color:#fff;
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:10.5px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
  border:2px solid #fff;
}
.dashboard-notifications-panneau{
  position:absolute;
  top:50px;
  right:0;
  width:320px;
  max-width:calc(100vw - 32px);
  max-height:420px;
  overflow-y:auto;
  background:#fff;
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:14px;
  box-shadow:0 30px 60px -30px rgba(20,30,26,0.28);
  padding:8px;
  z-index:50;
}
.dashboard-notifications-titre{
  margin:2px 0 8px;
  padding:0 5px;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:13px;
  font-weight:700;
  color:var(--gris-900, #232B27);
}
.dashboard-notifications-panneau .dashboard-etat-vide{ padding:14px 8px; font-size:12.5px; }
.dashboard-notifications-liste{ list-style:none; margin:0; padding:0; }
.dashboard-notifications-ligne a{
  display:flex;
  flex-direction:column;
  gap:2px;
  padding:9px 10px;
  border-radius:9px;
  text-decoration:none;
}
.dashboard-notifications-ligne a:hover{ background:var(--fond, #F2FAF6); }
.dashboard-notifications-ligne.est-nouvelle a{ background:var(--menthe-100, #D9F5E9); }
.dashboard-notifications-ligne.est-nouvelle a:hover{ background:var(--menthe-100, #D9F5E9); }
.dashboard-notifications-texte{ font-size:12.5px; font-weight:500; color:var(--gris-900, #232B27); line-height:1.4; }
.dashboard-notifications-date{ font-family:var(--police-mono, monospace); font-size:10px; color:var(--gris-500, #8B9A93); }

.dashboard-stats{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
  margin-bottom:24px;
}
.dashboard-carte-stat{
  background:#fff;
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:14px;
  padding:18px 20px;
}
.dashboard-stat-libelle{
  margin:0 0 10px;
  font-family:var(--police-mono, monospace);
  font-size:10.5px;
  letter-spacing:.4px;
  text-transform:uppercase;
  color:var(--gris-500, #8B9A93);
}
.dashboard-stat-valeur{
  margin:0;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:28px;
  font-weight:700;
  color:var(--gris-900, #232B27);
}
.dashboard-carte-stat .dashboard-barre-progression{ margin-top:10px; }

.dashboard-section-titre{
  margin:0 0 12px;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:15px;
  font-weight:700;
  color:var(--gris-900, #232B27);
}

/* Statistiques avancées (Pro) — sélecteur de période + barres CSS,
   aucune bibliothèque de graphiques. */
.stats-avancees-entete{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:14px;
}
.stats-avancees-periode{ display:flex; gap:6px; }
.stats-avancees-periode-lien{
  padding:6px 12px;
  border-radius:8px;
  border:1px solid var(--gris-200, #DCE6E1);
  font-family:var(--police-mono, monospace);
  font-size:11.5px;
  font-weight:600;
  color:var(--gris-700, #414B46);
  text-decoration:none;
  white-space:nowrap;
}
.stats-avancees-periode-lien:hover{ border-color:var(--menthe-500, #3EB489); color:var(--menthe-700, #278363); }
.stats-avancees-periode-lien.est-actif{
  background:var(--menthe-500, #3EB489);
  border-color:var(--menthe-500, #3EB489);
  color:#fff;
}

.stats-avancees-serie{ margin-bottom:18px; }
.stats-avancees-serie:last-child{ margin-bottom:0; }
.stats-avancees-serie-titre{
  margin:0 0 8px;
  font-size:12.5px;
  font-weight:600;
  color:var(--gris-700, #414B46);
}
.stats-avancees-barres{
  display:flex;
  align-items:flex-end;
  gap:2px;
  height:64px;
  width:100%;
}
.stats-avancees-barre-colonne{
  flex:1 1 0;
  min-width:0;
  height:100%;
  display:flex;
  align-items:flex-end;
}
.stats-avancees-barre{
  width:100%;
  min-height:2px;
  border-radius:2px 2px 0 0;
  background:linear-gradient(180deg, var(--bleu-500, #66A8FF), var(--menthe-500, #3EB489));
}
.stats-avancees-barres-legende{
  display:flex;
  justify-content:space-between;
  margin-top:6px;
  font-family:var(--police-mono, monospace);
  font-size:10.5px;
  color:var(--gris-500, #8B9A93);
}

.stats-avancees-collab-liste{ list-style:none; margin:0; padding:0; }
.stats-avancees-collab-ligne{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:6px;
  padding:10px 0;
  border-top:1px solid var(--gris-200, #DCE6E1);
}
.stats-avancees-collab-ligne:first-child{ border-top:none; }
.stats-avancees-collab-nom{ font-size:13px; font-weight:600; color:var(--gris-900, #232B27); }
.stats-avancees-collab-detail{ font-size:12px; color:var(--gris-500, #8B9A93); }

/* Activité (timeline de traçabilité, Pro) — formulaire de filtres +
   liste verticale, même logique visuelle que les blocs ci-dessus. */
.stats-activite-filtres{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:16px;
  padding:14px 16px;
  margin-bottom:16px;
  background:var(--menthe-050, #F2FAF6);
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:12px;
}
.stats-activite-filtre-champ{ display:flex; flex-direction:column; gap:4px; }
.stats-activite-filtre-champ label,
.stats-activite-filtre-types legend{
  font-family:var(--police-mono, monospace);
  font-size:10.5px;
  letter-spacing:.4px;
  text-transform:uppercase;
  color:var(--gris-500, #8B9A93);
  padding:0;
}
.stats-activite-filtre-champ select{
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:8px;
  padding:7px 10px;
  font-size:13px;
  color:var(--gris-900, #232B27);
  background:#fff;
}
.stats-activite-filtre-types{ border:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; flex:1 1 220px; }
.stats-activite-type-case{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:12.5px;
  color:var(--gris-700, #414B46);
  font-weight:400;
  text-transform:none;
  letter-spacing:normal;
  font-family:inherit;
}

.stats-activite-liste{ list-style:none; margin:0; padding:0; }
.stats-activite-ligne{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:4px 16px;
  padding:10px 0;
  border-top:1px solid var(--gris-200, #DCE6E1);
}
.stats-activite-ligne:first-child{ border-top:none; }
.stats-activite-texte{ font-size:13px; color:var(--gris-900, #232B27); flex:1 1 auto; min-width:0; }
.stats-activite-date{
  font-family:var(--police-mono, monospace);
  font-size:11px;
  color:var(--gris-500, #8B9A93);
  white-space:nowrap;
}

.dashboard-grille{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:20px;
  align-items:start;
}

/* ==== Disposition détail dossier (LOT D) ====
   Discussion en panneau indépendant, fermé par défaut. Toujours pleine
   largeur tant qu'elle est fermée (empilée sous Fichiers/widgets grâce à
   order:2, comme sa position d'origine à la fin de la page) ; ouverte,
   elle passe à ~35-40% de largeur et se place à droite du reste du
   contenu (~60-65%) grâce à flex-wrap et à l'ordre visuel — aucun JS,
   seul l'attribut natif [open] du <details> pilote la bascule. En
   dessous de 961px elle reste toujours empilée (aucune règle de largeur
   réduite ne s'applique), donc jamais de défilement horizontal imprévu
   sur mobile/tablette. */
.detail-disposition{
  display:flex;
  flex-wrap:wrap;
  gap:20px;
  align-items:flex-start;
}
.detail-disposition-principal{
  order:1;
  flex:1 1 100%;
  min-width:0;
}
.detail-discussion{
  order:2;
  flex:1 1 100%;
  min-width:0;
}
/* Activité (LOT F) : toujours pleine largeur et toujours en dernier,
   y compris quand la Discussion est ouverte (~35-40%) — order:3 la
   place systématiquement après les deux autres panneaux. */
.detail-activite-widget{
  order:3;
  flex:1 1 100%;
  min-width:0;
}
.detail-discussion-entete-texte{ display:flex; flex-direction:column; gap:4px; min-width:0; }
.detail-discussion-resume{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:400;
  color:var(--gris-500, #8B9A93);
}

@media (min-width:961px){
  .detail-discussion[open]{ flex:1 1 36%; }
  .detail-discussion[open] ~ .detail-disposition-principal{ flex:1 1 60%; }
}

/* Cartes de section : rayon plus prononcé (--rayon-lg, comme les
   grandes cartes du produit ailleurs sur le site), ombre douce et
   filet dégradé de marque en tête, pour la hiérarchie visuelle. */
.dashboard-carte{
  position:relative;
  background:#fff;
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:var(--rayon-lg, 22px);
  box-shadow:0 30px 60px -34px rgba(20,30,26,0.16);
  padding:22px 22px 20px;
  overflow:hidden;
}
.dashboard-carte::before{
  content:"";
  position:absolute;
  top:0; left:0; right:0;
  height:2px;
  background:linear-gradient(90deg, var(--menthe-500, #3EB489) 0%, var(--bleu-500, #66A8FF) 62%, var(--violet-500, #AAA5F5) 100%);
}
.dashboard-carte h2{
  margin:0 0 4px;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:15px;
  font-weight:700;
  color:var(--gris-900, #232B27);
}
.dashboard-carte-sous-titre{ margin:0 0 14px; font-size:12.5px; color:var(--gris-500, #8B9A93); }
.dashboard-etat-vide{ font-size:13px; line-height:1.6; color:var(--gris-500, #8B9A93); }

.dashboard-liste-dossiers{ list-style:none; margin:14px 0 0; padding:0; }
.dashboard-liste-dossiers li{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:11px 0;
  border-top:1px solid var(--gris-200, #DCE6E1);
}
.dashboard-liste-dossiers li:first-child{ border-top:none; }
.dashboard-dossier-nom{ font-size:13.5px; font-weight:600; color:var(--gris-900, #232B27); }
.dashboard-dossier-meta{ font-family:var(--police-mono, monospace); font-size:10.5px; color:var(--gris-500, #8B9A93); white-space:nowrap; }

/* ==== Mes dossiers ==== */
.dossiers-barre-outils{
  display:flex;
  align-items:center;
  gap:11px;
  flex-wrap:wrap;
  margin-bottom:18px;
}

.dossiers-recherche{
  width:100%;
  height:42px;
  padding:0 14px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  border-radius:9px;
  background:#fff;
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:13.5px;
  color:var(--gris-900, #232B27);
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.dossiers-recherche:focus{
  border-color:var(--menthe-500, #3EB489);
  box-shadow:0 0 0 4px var(--menthe-100, #D9F5E9);
}

.dossiers-filtres{ display:flex; gap:7px; flex-wrap:wrap; }
.dossiers-filtre{
  display:inline-flex;
  align-items:center;
  height:34px;
  padding:0 14px;
  border-radius:999px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  background:#fff;
  color:var(--gris-700, #414B46);
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:12.5px;
  font-weight:600;
  text-decoration:none;
  transition:border-color .15s ease, background .15s ease, color .15s ease;
}
.dossiers-filtre:hover{ border-color:var(--menthe-500, #3EB489); }
.dossiers-filtre.est-actif{
  border-color:var(--menthe-500, #3EB489);
  background:var(--menthe-100, #D9F5E9);
  color:var(--menthe-700, #278363);
}

.dossiers-recherche-bouton{
  height:42px;
  padding:0 18px;
  border:none;
  border-radius:9px;
  background:var(--menthe-600, #2FA278);
  color:#fff;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 14px 24px -12px rgba(47,162,120,.45);
  transition:background .15s ease, box-shadow .15s ease, transform .15s ease;
}
.dossiers-recherche-bouton:hover{ background:var(--menthe-700, #278363); transform:translateY(-1px); }

/* ==== Icône de recherche ==== */
.dossiers-recherche-wrap{ position:relative; flex:1; min-width:220px; }
.dossiers-recherche-icone{
  position:absolute;
  left:13px;
  top:50%;
  transform:translateY(-50%);
  color:var(--gris-500, #8B9A93);
  display:flex;
  pointer-events:none;
}
.dossiers-recherche-wrap .dossiers-recherche{ padding-left:38px; }

.dossiers-liste{ list-style:none; margin:0; padding:0; }
.dossiers-ligne{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:15px 4px;
  margin:0 -4px;
  border-radius:9px;
  border-top:1px solid var(--gris-200, #DCE6E1);
  text-decoration:none;
  color:inherit;
  transition:background .15s ease;
}
.dossiers-liste li:first-child .dossiers-ligne{ border-top:none; }
.dossiers-ligne:hover{ background:var(--fond, #F2FAF6); }
.dossiers-ligne-principal{ display:flex; flex-direction:column; gap:4px; min-width:0; }

.dossiers-badge{
  flex:none;
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:11.5px;
  font-weight:500;
  letter-spacing:normal;
  padding:5px 12px;
  border-radius:999px;
}
.dossiers-badge::before{
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
}
.dossiers-badge-actif{ background:var(--menthe-100, #D9F5E9); color:var(--menthe-700, #278363); }
.dossiers-badge-actif::before{ background:var(--menthe-500, #3EB489); }
.dossiers-badge-expire{ background:var(--gris-200, #DCE6E1); color:var(--gris-700, #414B46); }
.dossiers-badge-expire::before{ background:var(--gris-500, #8B9A93); }
.dossiers-badge-recu{ background:#E6F0FF; color:#3D6FCC; }
.dossiers-badge-recu::before{ background:#66A8FF; }

.dossiers-ligne-droite{ flex:none; display:flex; align-items:center; gap:10px; }
.dossiers-icone-sens{
  flex:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:50%;
  color:var(--gris-600, #5C6B64);
  background:var(--gris-100, #EDF3F0);
}
.dossiers-icone-sens-recu{ color:#3D6FCC; background:#E6F0FF; }

/* ==== Discussions (liste, LOT 2) ==== */
.discussions-ligne .dossiers-ligne-principal{ gap:5px; }
.discussions-dernier-message{
  display:block;
  font-size:12.5px;
  color:var(--gris-700, #414B46);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width:100%;
}
.discussions-dernier-message strong{ color:var(--gris-900, #232B27); font-weight:600; }

/* ==== Détail dossier ==== */
.detail-retour{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-bottom:18px;
  font-size:12.5px;
  font-weight:600;
  color:var(--menthe-600, #2FA278);
  text-decoration:none;
}
.detail-retour:hover{ color:var(--menthe-700, #278363); }

.detail-colonne{ display:flex; flex-direction:column; gap:20px; min-width:0; }

.detail-liste-fichiers{ list-style:none; margin:14px 0 0; padding:0; }
.detail-fichier{
  display:flex;
  align-items:center;
  gap:14px;
  padding:12px 0;
  border-top:1px solid var(--gris-200, #DCE6E1);
}
.detail-fichier:first-child{ border-top:none; }
.detail-fichier-nom{ flex:1; min-width:0; font-size:13.5px; font-weight:500; color:var(--gris-900, #232B27); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.detail-fichier-poids{ flex:none; font-family:var(--police-mono, monospace); font-size:10.5px; color:var(--gris-500, #8B9A93); }
.detail-fichier-telecharger{
  flex:none;
  height:32px;
  display:inline-flex;
  align-items:center;
  padding:0 13px;
  border-radius:7px;
  background:var(--menthe-500, #3EB489);
  color:#fff;
  font-size:12px;
  font-weight:700;
  text-decoration:none;
  transition:background .15s ease;
}
.detail-fichier-telecharger:hover{ background:var(--menthe-600, #2FA278); }

.bouton-apercu{
  flex:none;
  height:32px;
  display:inline-flex;
  align-items:center;
  padding:0 13px;
  border-radius:7px;
  background:none;
  border:1.5px solid var(--gris-200, #DCE6E1);
  color:var(--gris-700, #414B46);
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:12px;
  font-weight:700;
  cursor:pointer;
  transition:border-color .15s ease, color .15s ease;
}
.bouton-apercu:hover{ border-color:var(--menthe-500, #3EB489); color:var(--menthe-700, #278363); }

.popup-apercu-fichier{ position:fixed; inset:0; z-index:90; padding:24px; }
.popup-apercu-fichier:not([hidden]){ display:flex; align-items:center; justify-content:center; }
.popup-apercu-fichier-fond{ position:absolute; inset:0; background:rgba(20,30,26,.7); }
.popup-apercu-fichier-contenu{
  position:relative;
  width:100%;
  max-width:900px;
  height:85vh;
  max-height:760px;
  background:#fff;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(20,30,26,.35);
}
.popup-apercu-fichier-fermer{
  position:absolute;
  top:10px;
  right:10px;
  z-index:1;
  width:32px;
  height:32px;
  border-radius:50%;
  border:none;
  background:rgba(35,43,39,.7);
  color:#fff;
  font-size:18px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s ease;
}
.popup-apercu-fichier-fermer:hover{ background:rgba(35,43,39,.88); }
#popup-apercu-fichier-corps{ width:100%; height:100%; display:flex; align-items:center; justify-content:center; }
.popup-apercu-fichier-image{ max-width:100%; max-height:100%; object-fit:contain; }
.popup-apercu-fichier-pdf{ width:100%; height:100%; border:none; }
.popup-apercu-fichier-3d{ width:100%; height:100%; border-radius:9px; overflow:hidden; }
.popup-apercu-fichier-3d canvas{ display:block; width:100%; }

.detail-activite{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-direction:column; gap:10px; }
.detail-activite li{ font-size:13px; line-height:1.5; color:var(--gris-700, #414B46); }

.detail-lien-recuperation{
  margin:0 0 6px;
  font-family:var(--police-mono, monospace);
  font-size:11.5px;
  color:var(--gris-700, #414B46);
  word-break:break-all;
  background:var(--fond, #F2FAF6);
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:9px;
  padding:10px 12px;
}

.detail-verrou{ cursor:pointer; transition:opacity .15s ease; }
.detail-verrou:hover{ opacity:.8; }
.detail-verrou-entete{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:4px; }
.detail-verrou-entete h2{ margin:0; }

.dashboard-liste-verrous{ list-style:none; margin:0; padding:0; }
.dashboard-verrou{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 0;
  border-top:1px solid var(--gris-200, #DCE6E1);
  cursor:pointer;
}
.dashboard-verrou:first-child{ border-top:none; }
.dashboard-verrou-titre{ font-size:13px; font-weight:600; color:var(--gris-900, #232B27); }
.dashboard-verrou-badge{
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:11px;
  font-weight:600;
  letter-spacing:normal;
  color:#fff;
  background:var(--gris-900, #232B27);
  border-radius:999px;
  padding:4px 10px;
}

/* ==== Fenêtre de verrou (fonctionnalité Premium) ==== */
.dashboard-verrou-popup{ position:fixed; inset:0; z-index:80; padding:20px; }
.dashboard-verrou-popup:not([hidden]){ display:flex; align-items:center; justify-content:center; }
.dashboard-verrou-popup-fond{ position:absolute; inset:0; background:rgba(20,30,26,.55); }
.dashboard-verrou-popup-carte{
  position:relative;
  width:100%;
  max-width:380px;
  background:#fff;
  border-radius:var(--rayon-lg, 22px);
  box-shadow:var(--ombre-carte, 0 40px 80px -24px rgba(20,30,26,0.45));
  padding:28px 28px 24px;
  text-align:center;
}
.dashboard-verrou-popup-icone{
  display:flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  margin:0 auto 14px;
  border-radius:50%;
  background:var(--fond, #F2FAF6);
  color:var(--gris-500, #8B9A93);
}
.dashboard-verrou-popup-titre{ margin:0 0 7px; font-family:var(--police-titre, 'Comfortaa', sans-serif); font-size:16px; font-weight:700; color:var(--gris-900, #232B27); }
.dashboard-verrou-popup-detail{ margin:0 0 6px; font-size:13.5px; line-height:1.6; color:var(--gris-500, #8B9A93); }
.dashboard-verrou-popup-offre{ margin:0 0 18px; font-family:var(--police-mono, monospace); font-size:10px; letter-spacing:.4px; text-transform:uppercase; color:var(--gris-700, #414B46); }
.dashboard-verrou-popup-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:44px;
  border-radius:9px;
  background:var(--menthe-600, #2FA278);
  color:#fff;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:13px;
  font-weight:700;
  text-decoration:none;
  box-sizing:border-box;
  box-shadow:0 14px 24px -12px rgba(47,162,120,.45);
  transition:background .15s ease, transform .15s ease;
}
.dashboard-verrou-popup-cta:hover{ background:var(--menthe-700, #278363); transform:translateY(-1px); color:#fff; }
#dashboard-verrou-popup-fermer{
  margin-top:12px;
  border:none;
  background:transparent;
  padding:0;
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:12.5px;
  font-weight:600;
  color:var(--gris-500, #8B9A93);
  cursor:pointer;
}
#dashboard-verrou-popup-fermer:hover{ color:var(--gris-700, #414B46); }

/* ==== Mon compte ==== */
.compte-profil{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  margin-bottom:20px;
}
.compte-profil-avatar{
  flex:none;
  width:52px;
  height:52px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--menthe-500, #3EB489), var(--bleu-500, #66A8FF) 58%, var(--violet-500, #AAA5F5));
  color:#fff;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:17px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
}
.compte-profil-details{ flex:1; min-width:0; }
.compte-profil-nom{ margin:0 0 3px; font-family:var(--police-titre, 'Comfortaa', sans-serif); font-size:16px; font-weight:700; color:var(--gris-900, #232B27); }
.compte-profil-email{ margin:0 0 3px; font-family:var(--police-mono, monospace); font-size:11.5px; color:var(--gris-500, #8B9A93); }
.compte-profil-meta{ margin:0; font-size:11.5px; color:var(--gris-500, #8B9A93); }
.compte-profil-lien{
  flex:none;
  font-size:12.5px;
  font-weight:600;
  color:var(--menthe-600, #2FA278);
  text-decoration:none;
}
.compte-profil-lien:hover{ color:var(--menthe-700, #278363); }

.compte-infos-grille{
  display:grid;
  grid-template-columns:repeat(5, minmax(0,1fr));
  gap:14px;
  margin-bottom:24px;
}
.compte-info-carte{
  background:#fff;
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:14px;
  padding:16px 18px;
}
.compte-info-libelle{
  margin:0 0 7px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--gris-500, #8B9A93);
}
.compte-info-valeur{
  margin:0;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:15px;
  font-weight:700;
  color:var(--gris-900, #232B27);
}
.compte-info-carte .dashboard-barre-progression{ margin-top:10px; }

.compte-liste-disponibles{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-direction:column; gap:10px; }
.compte-liste-disponibles li{
  position:relative;
  padding-left:24px;
  font-size:13px;
  line-height:1.5;
  color:var(--gris-700, #414B46);
}
.compte-liste-disponibles li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--menthe-600, #2FA278);
  font-weight:700;
}

.compte-bouton-inerte{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:40px;
  margin-top:14px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  border-radius:9px;
  color:var(--gris-500, #8B9A93);
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:12.5px;
  font-weight:700;
  opacity:.6;
  cursor:default;
}

/* ==== Assistance ==== */
.assistance-faq{ display:flex; flex-direction:column; gap:2px; margin-top:14px; }

.assistance-question{
  border-top:1px solid var(--gris-200, #DCE6E1);
  padding:13px 0;
}
.assistance-question:first-child{ border-top:none; padding-top:0; }

.assistance-question summary{
  cursor:pointer;
  list-style:none;
  font-size:13.5px;
  font-weight:600;
  color:var(--gris-900, #232B27);
  position:relative;
  padding-right:24px;
}
.assistance-question summary::-webkit-details-marker{ display:none; }
.assistance-question summary::after{
  content:"+";
  position:absolute;
  right:0;
  top:0;
  font-family:var(--police-mono, monospace);
  font-size:15px;
  color:var(--menthe-600, #2FA278);
}
.assistance-question[open] summary::after{ content:"−"; }
.assistance-question summary:hover{ color:var(--menthe-700, #278363); }

.assistance-reponse{
  margin:10px 0 0;
  font-size:13px;
  line-height:1.6;
  color:var(--gris-700, #414B46);
}

/* ==== Assistant Cadixel (chatbot FAQ, LOT B) ====
   Système par mots-clés sur cadixel_elements_faq() — aucune IA
   externe, aucune donnée dupliquée. Identité visuelle inspirée des
   bulles de la discussion de dossier (.discussion-*, ci-dessous) mais
   classes dédiées : le chatbot n'est jamais mêlé à la discussion d'un
   dossier, ni visuellement ni dans le balisage. */
.chatbot-fenetre{
  display:flex;
  flex-direction:column;
  margin-top:14px;
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:16px;
  overflow:hidden;
  background:var(--fond, #F2FAF6);
}
.chatbot-messages{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:16px;
  max-height:360px;
  overflow-y:auto;
}
.chatbot-ligne{ display:flex; justify-content:flex-start; width:100%; }
.chatbot-ligne-utilisateur{ justify-content:flex-end; }
.chatbot-bulle{
  max-width:82%;
  padding:10px 14px;
  border-radius:14px;
  background:#fff;
  border:1px solid var(--gris-200, #DCE6E1);
  overflow-wrap:break-word;
  word-break:break-word;
}
.chatbot-ligne-utilisateur .chatbot-bulle{
  background:var(--menthe-600, #2FA278);
  border:none;
}
.chatbot-texte{ margin:0; font-size:13.5px; line-height:1.55; color:var(--gris-700, #414B46); white-space:pre-wrap; }
.chatbot-ligne-utilisateur .chatbot-texte{ color:#fff; }
.chatbot-formulaire{
  display:flex;
  align-items:center;
  gap:8px;
  padding:12px 14px;
  border-top:1px solid var(--gris-200, #DCE6E1);
  background:#fff;
}
.chatbot-formulaire input[type="text"]{
  flex:1;
  min-width:0;
  height:40px;
  padding:0 14px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  border-radius:20px;
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:13.5px;
  color:var(--gris-900, #232B27);
  background:var(--fond, #F2FAF6);
  outline:none;
  transition:border-color .15s ease;
}
.chatbot-formulaire input[type="text"]:focus{ border-color:var(--menthe-500, #3EB489); }
.chatbot-bouton-envoyer{
  flex:none;
  width:40px;
  height:40px;
  border-radius:50%;
  border:none;
  background:var(--menthe-600, #2FA278);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:background .15s ease;
}
.chatbot-bouton-envoyer:hover{ background:var(--menthe-700, #278363); }
.chatbot-bouton-envoyer svg{ width:16px; height:16px; display:block; }
.chatbot-suggestion-ticket{
  margin-top:14px;
  font-size:13px;
  color:var(--gris-700, #414B46);
}

@media (max-width:480px){
  .chatbot-messages{ max-height:280px; padding:12px; }
  .chatbot-bulle{ max-width:90%; }
}

/* ==== Discussion (détail dossier) ==== */
.discussion-messages{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin:14px 0 18px;
  width:100%;
  /* Pas de hauteur ni de défilement propres à ce bloc : la page entière
     défile déjà via .dashboard-contenu — un second défilement imbriqué
     ne faisait que comprimer la discussion dans un espace trop étroit. */
}

.discussion-ligne{ display:flex; justify-content:flex-start; width:100%; min-width:0; }
.discussion-ligne-moi{ justify-content:flex-end; }

.discussion-bulle{
  max-width:78%;
  min-width:0;
  padding:11px 14px;
  border-radius:12px;
  background:var(--fond, #F2FAF6);
  border:1px solid var(--gris-200, #DCE6E1);
  overflow-wrap:break-word;
  word-break:break-word;
}
.discussion-ligne-moi .discussion-bulle{
  background:var(--menthe-600, #2FA278);
  border:none;
}

.discussion-auteur{ margin:0 0 4px; font-size:11px; font-weight:600; color:var(--gris-500, #8B9A93); }
.discussion-ligne-moi .discussion-auteur{ color:rgba(255,255,255,0.75); }

.discussion-texte{ margin:0; font-size:13.5px; line-height:1.55; color:var(--gris-700, #414B46); white-space:pre-wrap; }
.discussion-ligne-moi .discussion-texte{ color:#fff; }

.discussion-heure{ margin:7px 0 0; font-family:var(--police-mono, monospace); font-size:10px; color:var(--gris-500, #8B9A93); }
.discussion-ligne-moi .discussion-heure{ color:rgba(255,255,255,0.65); }

.discussion-formulaire{ display:flex; flex-direction:column; gap:10px; }
.discussion-formulaire textarea{
  width:100%;
  min-height:70px;
  padding:11px 14px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  border-radius:9px;
  background:var(--fond, #F2FAF6);
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:13.5px;
  color:var(--gris-900, #232B27);
  outline:none;
  resize:vertical;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.discussion-formulaire textarea:focus{
  border-color:var(--menthe-500, #3EB489);
  box-shadow:0 0 0 4px var(--menthe-100, #D9F5E9);
}
.discussion-formulaire button{
  align-self:flex-end;
  height:40px;
  padding:0 20px;
  border:none;
  border-radius:9px;
  background:var(--menthe-600, #2FA278);
  color:#fff;
  font-family:var(--police-titre, 'Comfortaa', sans-serif);
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  transition:background .15s ease;
}
.discussion-formulaire button:hover{ background:var(--menthe-700, #278363); }

.discussion-expire{
  font-size:13px;
  color:var(--gris-500, #8B9A93);
  background:var(--fond, #F2FAF6);
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:9px;
  padding:12px 14px;
  margin:0;
}

/* ==== Discussion complète (Starter+) ==== */
.discussion-fil{ margin:8px 0 0 24px; display:flex; flex-direction:column; gap:10px; }
.discussion-ligne-reponse .discussion-bulle{ max-width:100%; }

.discussion-pieces-jointes{ list-style:none; margin:8px 0 0; padding:0; display:flex; flex-direction:column; gap:5px; }
.discussion-pieces-jointes li{ display:flex; align-items:center; gap:8px; font-size:12px; }
.discussion-pieces-jointes a{ color:var(--menthe-600, #2FA278); font-weight:600; text-decoration:none; }
.discussion-pieces-jointes a:hover{ text-decoration:underline; }
.discussion-ligne-moi .discussion-pieces-jointes a{ color:#fff; }
.discussion-piece-jointe-taille{ font-family:var(--police-mono, monospace); font-size:10.5px; color:var(--gris-500, #8B9A93); }
.discussion-ligne-moi .discussion-piece-jointe-taille{ color:rgba(255,255,255,0.65); }

.discussion-mentions-ligne{ margin:8px 0 0; display:flex; flex-wrap:wrap; gap:5px; }
.discussion-mention-badge{
  font-family:var(--police-mono, monospace);
  font-size:10px;
  padding:2px 8px;
  border-radius:20px;
  background:var(--bleu-100, #E7F0FC);
  color:var(--bleu-600, #3E7BC4);
}
.discussion-ligne-moi .discussion-mention-badge{ background:rgba(255,255,255,0.2); color:#fff; }

.discussion-reactions{ display:flex; flex-wrap:wrap; gap:6px; margin-top:9px; }
.discussion-reaction-forme{ margin:0; }
.discussion-reaction-bouton{
  display:inline-flex;
  align-items:center;
  gap:3px;
  height:24px;
  padding:0 9px;
  border-radius:20px;
  border:1px solid var(--gris-200, #DCE6E1);
  background:#fff;
  font-size:12px;
  cursor:pointer;
}
.discussion-reaction-bouton.est-actif{ border-color:var(--menthe-500, #3EB489); background:var(--menthe-100, #D9F5E9); }
.discussion-ligne-moi .discussion-reaction-bouton{ background:rgba(255,255,255,0.12); border-color:rgba(255,255,255,0.3); color:#fff; }
.discussion-ligne-moi .discussion-reaction-bouton.est-actif{ background:rgba(255,255,255,0.35); }

.discussion-lu-par{ margin:7px 0 0; font-size:10.5px; color:var(--gris-500, #8B9A93); }
.discussion-ligne-moi .discussion-lu-par{ color:rgba(255,255,255,0.65); }

.discussion-repondre-bouton{
  margin-top:8px;
  background:none;
  border:none;
  padding:0;
  font-size:11.5px;
  font-weight:600;
  color:var(--gris-500, #8B9A93);
  cursor:pointer;
  text-decoration:underline;
}
.discussion-ligne-moi .discussion-repondre-bouton{ color:rgba(255,255,255,0.75); }

.discussion-reponse-formulaire{ display:flex; flex-direction:column; gap:8px; margin-top:10px; }
/* L'attribut HTML [hidden] est normalement traduit en display:none par
   le navigateur, mais une règle d'auteur sur la classe (display:flex
   ci-dessus) l'emportait toujours sur cette valeur par défaut — chaque
   formulaire de réponse restait donc visible en permanence. */
.discussion-reponse-formulaire[hidden]{ display:none; }
.discussion-reponse-formulaire textarea{
  min-height:50px;
  padding:9px 12px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  border-radius:9px;
  background:#fff;
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:13px;
}
.discussion-reponse-formulaire button{
  align-self:flex-end;
  height:32px;
  padding:0 16px;
  border:none;
  border-radius:8px;
  background:var(--menthe-600, #2FA278);
  color:#fff;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
}

.discussion-options-avancees{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.discussion-piece-jointe-champ{ font-size:13px; cursor:pointer; color:var(--gris-700, #414B46); display:flex; align-items:center; gap:6px; }
.discussion-piece-jointe-champ input[type="file"]{ font-size:12px; max-width:220px; }
.discussion-mentions-champ{ font-size:13px; }
.discussion-mentions-champ summary{ cursor:pointer; color:var(--gris-700, #414B46); }
.discussion-mention-option{ display:flex; align-items:center; gap:6px; font-size:12.5px; padding:4px 0; }
.discussion-mentions-vide{ margin:4px 0 0; font-size:12px; color:var(--gris-500, #8B9A93); }

/* ==== Versions (Détail dossier) ==== */
.version-liste{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-direction:column; gap:12px; }
.version-ligne{ border:1px solid var(--gris-200, #DCE6E1); border-radius:10px; padding:12px 14px; }
.version-ligne-entete{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.version-numero{ font-size:13px; font-weight:600; color:var(--gris-900, #232B27); }
.version-badge-officielle{
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:11px;
  font-weight:600;
  letter-spacing:normal;
  color:var(--menthe-600, #2FA278);
  background:var(--menthe-100, #D9F5E9);
  padding:3px 10px;
  border-radius:20px;
}
.version-date{ margin-left:auto; font-family:var(--police-mono, monospace); font-size:10.5px; color:var(--gris-500, #8B9A93); }
.version-note{ margin:8px 0 0; font-size:12.5px; color:var(--gris-700, #414B46); }
.version-fichiers{ list-style:none; margin:10px 0 0; padding:0; display:flex; flex-direction:column; gap:6px; }
.version-fichiers li{ display:flex; align-items:center; gap:8px; font-size:12.5px; }
.version-fichiers a{ color:var(--menthe-600, #2FA278); font-weight:600; text-decoration:none; }
.version-fichiers a:hover{ text-decoration:underline; }
.version-fichier-taille{ font-family:var(--police-mono, monospace); font-size:10.5px; color:var(--gris-500, #8B9A93); }

.version-formulaire{ display:flex; flex-direction:column; gap:10px; margin-top:16px; }
.version-formulaire input[type="file"]{ font-size:13px; }
.version-formulaire textarea,
.version-formulaire input[type="password"],
.version-formulaire input[type="number"],
.version-formulaire input[type="text"],
.version-formulaire select{
  min-height:50px;
  padding:9px 12px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  border-radius:9px;
  background:var(--fond, #F2FAF6);
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:13px;
  resize:vertical;
}

/* ==== Collaborateurs (Mon compte) ==== */
.compte-message-ok{
  font-size:13px;
  color:#1B6E4C;
  background:var(--menthe-100, #D9F5E9);
  border-radius:8px;
  padding:10px 12px;
  margin:0 0 16px;
}

.compte-liste-membres{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-direction:column; gap:2px; }
.compte-membre-ligne{
  display:flex;
  align-items:center;
  gap:14px;
  padding:11px 0;
  border-top:1px solid var(--gris-200, #DCE6E1);
}
.compte-membre-ligne:first-child{ border-top:none; }
.compte-membre-nom{ font-size:13.5px; font-weight:600; color:var(--gris-900, #232B27); flex:1 1 auto; min-width:0; }
.compte-membre-email{ font-family:var(--police-mono, monospace); font-size:11px; color:var(--gris-500, #8B9A93); white-space:nowrap; }
.compte-membre-role{
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:11px;
  font-weight:600;
  letter-spacing:normal;
  color:var(--menthe-600, #2FA278);
  background:var(--menthe-100, #D9F5E9);
  padding:3px 10px;
  border-radius:20px;
  white-space:nowrap;
}
.compte-membre-action{ margin:0; }

/* Permissions granulaires (Business, LOT 4B) : panneau repliable ouvert
   par l'Owner sur la ligne d'un Collaborateur ou d'un Manager — reste
   en flux normal (pas de position absolue) pour ne jamais être rogné
   par le overflow:hidden de la carte parente (.dashboard-carte). */
.compte-membre-permissions summary{ cursor:pointer; list-style:none; }
.compte-membre-permissions summary::-webkit-details-marker{ display:none; }
.compte-permissions-formulaire{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:8px;
  padding:12px 14px;
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:10px;
  background:var(--fond, #F2FAF6);
}
.compte-permissions-formulaire .compte-bouton{ align-self:flex-start; margin-top:2px; }
.compte-lien-discret{
  background:none;
  border:none;
  padding:0;
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:12px;
  font-weight:600;
  color:var(--gris-500, #8B9A93);
  cursor:pointer;
  text-decoration:underline;
}
.compte-lien-discret:hover{ color:#B8402A; }

.compte-invitation-formulaire{ display:flex; gap:10px; }
.compte-invitation-formulaire input[type="email"]{
  flex:1 1 auto;
  min-width:0;
  height:42px;
  padding:0 14px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  border-radius:9px;
  background:var(--fond, #F2FAF6);
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:13.5px;
}
.compte-invitation-formulaire input[type="email"]:focus{
  border-color:var(--menthe-500, #3EB489);
  box-shadow:0 0 0 4px var(--menthe-100, #D9F5E9);
}
.compte-invitation-formulaire .compte-bouton{ width:auto; padding:0 20px; margin-top:0; flex:none; }

.compte-bouton-auto{ width:auto; padding:0 20px; height:38px; margin-top:0; }

/* ==== Branding (Mon compte, Business) ==== */
.compte-branding-apercu{
  display:flex;
  align-items:center;
  gap:14px;
  margin:14px 0 16px;
}
.compte-branding-logo{
  display:block;
  max-width:130px;
  max-height:64px;
  object-fit:contain;
  border-radius:10px;
  border:1px solid var(--gris-200, #DCE6E1);
  background:#fff;
  padding:6px 10px;
}
.compte-branding-logo-vide{
  display:flex;
  align-items:center;
  justify-content:center;
  height:64px;
  padding:0 16px;
  border-radius:10px;
  border:1.5px dashed var(--gris-200, #DCE6E1);
  background:var(--fond, #F2FAF6);
  font-size:11.5px;
  font-weight:600;
  color:var(--gris-500, #8B9A93);
  white-space:nowrap;
}
.compte-branding-couleur{
  flex:none;
  width:40px;
  height:40px;
  border-radius:10px;
  border:1px solid var(--gris-200, #DCE6E1);
  box-shadow:inset 0 0 0 3px #fff;
}
.compte-branding-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px 20px;
  padding-top:14px;
  border-top:1px solid var(--gris-200, #DCE6E1);
}
.compte-branding-form{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.compte-branding-form input[type="file"]{
  font-size:12px;
  max-width:190px;
  color:var(--gris-700, #414B46);
}
.compte-branding-form-couleur{
  display:flex;
  align-items:center;
  gap:8px;
}
.compte-branding-form-couleur label{
  font-size:11px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--gris-500, #8B9A93);
}
.compte-branding-form-couleur input[type="color"]{
  width:34px;
  height:34px;
  padding:2px;
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:8px;
  cursor:pointer;
  background:#fff;
}
.compte-branding-note{ margin-top:12px; }

/* ==== Facturation (Mon compte, PRO/BUSINESS) ==== */
.compte-liste-factures{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-direction:column; gap:2px; }
.compte-facture-ligne{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  padding:12px 0;
  border-top:1px solid var(--gris-200, #DCE6E1);
}
.compte-facture-ligne:first-child{ border-top:none; }
.compte-facture-details{ display:flex; align-items:center; gap:10px; min-width:0; flex-wrap:wrap; }
.compte-facture-titre{ font-size:13.5px; font-weight:600; color:var(--gris-900, #232B27); }
.compte-facture-meta{
  font-family:var(--police-mono, monospace);
  font-size:10px;
  letter-spacing:.04em;
  color:var(--gris-500, #8B9A93);
  background:var(--gris-200, #DCE6E1);
  padding:2px 8px;
  border-radius:20px;
}
.compte-facture-actions{ display:flex; align-items:center; gap:14px; flex:none; }

/* ==== Validation (Détail dossier) ==== */
.validation-historique{ list-style:none; margin:16px 0 0; padding:0; display:flex; flex-direction:column; gap:10px; }
.validation-cycle{
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:10px;
  padding:12px 14px;
}
.validation-cycle-entete{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.validation-cycle-entete + .validation-cycle-commentaire{ margin-top:8px; }
.validation-cycle-date{ font-family:var(--police-mono, monospace); font-size:10.5px; color:var(--gris-500, #8B9A93); white-space:nowrap; }
.validation-cycle-commentaire{ font-size:13px; color:var(--gris-700, #414B46); line-height:1.5; margin:0; }
.validation-statut{
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:11px;
  font-weight:600;
  letter-spacing:normal;
  padding:3px 10px;
  border-radius:20px;
  white-space:nowrap;
}
.validation-statut-en_attente{ color:#A9631E; background:#FBEEDD; }
.validation-statut-validee{ color:#1B6E4C; background:var(--menthe-100, #D9F5E9); }
.validation-statut-modification_demandee{ color:#8A2C1E; background:#F7DDD7; }
.validation-statut-annulee{ color:var(--gris-500, #8B9A93); background:var(--fond, #F2FAF6); }

/* ==== Support humain ==== */
.ticket-statut{
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:11px;
  font-weight:600;
  letter-spacing:normal;
  padding:3px 10px;
  border-radius:20px;
  white-space:nowrap;
}
.ticket-statut-ouvert{ color:#A9631E; background:#FBEEDD; }
.ticket-statut-resolu{ color:#1B6E4C; background:var(--menthe-100, #D9F5E9); }
.ticket-statut-ferme{ color:var(--gris-500, #8B9A93); background:var(--fond, #F2FAF6); }

.ticket-liste{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:2px; }
.ticket-ligne{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px 0;
  border-top:1px solid var(--gris-200, #DCE6E1);
}
.ticket-ligne:first-child{ border-top:none; }
.ticket-ligne-sujet{ font-size:13.5px; font-weight:600; color:var(--gris-900, #232B27); text-decoration:none; }
.ticket-ligne-sujet:hover{ color:var(--menthe-600, #2FA278); }

.ticket-fil{ list-style:none; margin:0 0 16px; padding:0; display:flex; flex-direction:column; gap:12px; }
.ticket-message{
  border:1px solid var(--gris-200, #DCE6E1);
  border-radius:10px;
  padding:12px 14px;
  background:var(--fond, #F2FAF6);
}
.ticket-message-staff{ background:var(--menthe-100, #D9F5E9); border-color:var(--menthe-200, #BEE8D5); }
.ticket-message-entete{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:6px; }
.ticket-message-auteur{ font-size:12.5px; font-weight:700; color:var(--gris-900, #232B27); }
.ticket-message-date{ font-family:var(--police-mono, monospace); font-size:10.5px; color:var(--gris-500, #8B9A93); white-space:nowrap; }
.ticket-message-texte{ margin:0; font-size:13.5px; line-height:1.55; color:var(--gris-700, #414B46); white-space:pre-wrap; }

.ticket-rdv-bloc{
  border:1.5px solid var(--menthe-200, #BEE8D5);
  background:var(--menthe-100, #D9F5E9);
  border-radius:10px;
  padding:14px 16px;
  margin-bottom:12px;
}
.ticket-rdv-confirme{ border-color:var(--menthe-500, #3EB489); }
.ticket-rdv-titre{ margin:0 0 10px; font-size:13.5px; font-weight:700; color:var(--gris-900, #232B27); }
.ticket-rdv-creneau{ display:block; font-size:13px; color:var(--gris-700, #414B46); padding:4px 0; }
.ticket-rdv-bloc input[type="tel"]{
  min-height:44px;
  padding:9px 12px;
  border:1.5px solid var(--gris-200, #DCE6E1);
  border-radius:9px;
  background:#fff;
  font-family:var(--police-texte, 'Inter', sans-serif);
  font-size:13px;
}

/* ==== Nouveau transfert (Tableau de bord, LOT A) ====
   N'habille que la fenêtre : les cartes elles-mêmes (.pile-cartes,
   .carte-envoi, .zone-depot, .btn-envoyer, .champ...) réutilisent tel
   quel le CSS de style.css/responsive.css, déjà chargé sur toutes les
   pages — y compris leurs paliers responsive déjà réglés pour la page
   d'accueil, qui s'appliquent donc ici aussi sans rien dupliquer.
   z-index volontairement sous celui de .popup-apercu (style.css, 50,
   partagé avec l'accueil — jamais modifié ici) pour que l'aperçu de
   fichier s'affiche toujours au-dessus de ce popup. */
.popup-nouveau-transfert{ position:fixed; inset:0; z-index:45; padding:32px; overflow-y:auto; }
.popup-nouveau-transfert:not([hidden]){ display:flex; align-items:center; justify-content:center; }
.popup-nouveau-transfert-fond{ position:fixed; inset:0; background:rgba(20,30,26,.7); }
.popup-nouveau-transfert-contenu{
  position:relative;
  z-index:1;
  width:100%;
  max-width:600px;
  margin:auto;
}
/* Croix simple intégrée à la carte (pas de bouton lourd/pastille sombre) :
   petite, discrète, dans le coin de la carte elle-même. */
.popup-nouveau-transfert-fermer{
  position:absolute;
  top:14px;
  right:14px;
  z-index:2;
  width:26px;
  height:26px;
  border-radius:50%;
  border:none;
  background:transparent;
  color:var(--gris-500, #8B9A93);
  font-size:19px;
  font-weight:300;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s ease, color .15s ease;
}
.popup-nouveau-transfert-fermer:hover{ background:var(--fond, #F2FAF6); color:var(--gris-900, #232B27); }
.popup-nouveau-transfert .colonne-carte{ display:flex; flex-direction:column; align-items:center; }
.popup-nouveau-transfert .pile-cartes{ width:100%; margin-top:8px; }
/* Comportement "demi-écran" contenu : la carte ne grandit jamais au-delà
   d'une portion raisonnable de la hauteur d'écran (défilement interne
   sinon) — garde toujours une marge visible au-dessus/en dessous plutôt
   qu'un bloc disproportionné en plein écran. Valeur en vh : s'adapte
   nativement à toutes les tailles d'écran, y compris mobile. */
.popup-nouveau-transfert .carte-envoi{ width:100%; max-height:80vh; overflow-y:auto; }
.mentions-sous-carte-popup{ color:var(--gris-500, #8B9A93); }

@media (max-width:480px){
  .popup-nouveau-transfert{ padding:14px; }
  .popup-nouveau-transfert .carte-envoi{ max-height:84vh; }
}

/* ==== Sections repliables (Mon compte / Tableau de bord) ====
   <details>/<summary> natif : accessible clavier et lecteur d'écran
   sans JS supplémentaire, même mécanisme déjà utilisé pour les
   questions de la FAQ (.assistance-question) et la gestion des
   permissions par membre (.compte-membre-permissions). Fermé par
   défaut via l'absence de l'attribut [open] sur le <details> dans le
   HTML. */
.dashboard-carte-repliable-entete,
.dashboard-section-repliable-entete{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  list-style:none;
}
.dashboard-carte-repliable-entete::-webkit-details-marker,
.dashboard-section-repliable-entete::-webkit-details-marker{ display:none; }
.dashboard-carte-repliable-entete h2,
.dashboard-section-repliable-entete h2{ margin:0; }
.dashboard-carte-repliable-entete::after,
.dashboard-section-repliable-entete::after{
  content:"▸";
  flex:none;
  font-size:13px;
  color:var(--gris-500, #8B9A93);
}
details[open] > .dashboard-carte-repliable-entete::after,
details[open] > .dashboard-section-repliable-entete::after{
  content:"▼";
}
.dashboard-carte-repliable-corps{ margin-top:14px; }

/* ==== Responsive ====
   > 1200px  : desktop classique, mise en page d'origine inchangée.
   ≤ 1200px  : demi-écran / petite fenêtre desktop, tablette paysage —
   la sidebar reste verticale mais s'allège ; les grilles passent de 4-5
   à 3 colonnes.
   ≤ 900px   : tablette portrait — la sidebar bascule en barre
   horizontale (comportement d'origine, complété ci-dessous pour les
   filtres et la modale d'aperçu).
   ≤ 640px   : grand smartphone — les barres d'outils et boutons
   pleine largeur remplacent les lignes qui débordaient.
   ≤ 480px   : smartphone standard (comportement d'origine, complété).
   ≤ 380px   : petit smartphone — dernier ajustement de densité. */
@media (max-width:1200px){
  .dashboard-barre{ width:200px; padding:20px 14px; }
  .dashboard-nav-item{ padding:9px 10px; font-size:13px; }
  .dashboard-contenu{ padding:28px 26px; }
  .dashboard-stats{ grid-template-columns:repeat(3, minmax(0,1fr)); }
  .compte-infos-grille{ grid-template-columns:repeat(3, minmax(0,1fr)); }
}

@media (max-width:900px){
  .dashboard{ flex-direction:column; }
  .dashboard-barre{ width:100%; height:auto; flex:none; flex-direction:row; align-items:center; padding:14px 16px; overflow-y:visible; }
  .dashboard-marque{ margin-right:12px; margin-bottom:0; }
  .dashboard-marque-badge{ padding:6px 11px; }
  .dashboard-marque-badge img{ height:22px; }

  /* La navigation et sa section verrouillée passent en une seule ligne
     défilable horizontalement ; l'intitulé « Avec une offre supérieure »
     n'a pas la place de s'afficher, le séparateur devient un simple
     filet vertical entre les deux groupes. */
  .dashboard-nav-groupe{ display:flex; flex-direction:row; align-items:center; flex:1; min-width:0; gap:2px; overflow-x:auto; }
  .dashboard-nav{ flex-direction:row; flex:none; }
  .dashboard-nav-verrouille{ flex-direction:row; flex:none; }
  .dashboard-nav-groupe-titre{ display:none; }
  .dashboard-nav-separateur{ width:1px; height:22px; flex:none; margin:0 6px; }
  .dashboard-nav-item{ padding:10px 12px; font-size:13.5px; white-space:nowrap; }

  .dashboard-stockage-mini{ display:none; }
  .dashboard-contenu{ padding:22px 18px 40px; }
  .dashboard-entete h1{ font-size:25px; }
  .dashboard-stats{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .dashboard-grille{ grid-template-columns:minmax(0,1fr); }
  .compte-infos-grille{ grid-template-columns:repeat(2, minmax(0,1fr)); }

  /* Filtres (Mes dossiers / Activité / Audit avancé) : chaque champ
     prend toute la largeur au lieu de se comprimer sur la même ligne. */
  .dossiers-recherche-wrap{ flex:1 1 100%; min-width:0; }
  .stats-activite-filtres{ align-items:stretch; }
  .stats-activite-filtre-champ{ flex:1 1 220px; }
  .stats-activite-filtre-champ select{ width:100%; }

  /* Modale d'aperçu fichier (image/PDF/3D) : moins de marge perdue
     autour du contenu sur un écran étroit. */
  .popup-apercu-fichier{ padding:16px; }
}

@media (max-width:640px){
  .compte-profil-lien{ flex:1 1 100%; }
  .dossiers-filtres{ flex:1 1 100%; }
  .dossiers-recherche-bouton{ width:100%; }
  .popup-apercu-fichier{ padding:14px; }
  .popup-apercu-fichier-contenu{ height:88vh; }
}

@media (max-width:480px){
  .compte-carte{ padding:26px 20px; }
  .dashboard-carte{ padding:18px 16px 16px; }
  .dashboard-entete h1{ font-size:21px; }
  .dashboard-stats{ grid-template-columns:minmax(0,1fr); }
  .compte-infos-grille{ grid-template-columns:minmax(0,1fr); }
  .dashboard-menu-utilisateur-nom{ display:none; }
  .dashboard-menu-utilisateur-bouton{ padding:0 10px 0 6px; gap:0; }
  .compte-membre-ligne{ flex-wrap:wrap; row-gap:6px; }
  .compte-membre-email{ flex:1 1 100%; order:3; white-space:normal; }
  .compte-invitation-formulaire{ flex-direction:column; }
  .compte-invitation-formulaire .compte-bouton{ width:100%; }
  .discussion-bulle{ max-width:92%; }
  .discussion-fil{ margin-left:12px; }

  /* Liste de dossiers : le badge Actif/Expiré descend sous le nom du
     dossier plutôt que de se comprimer à côté sur la même ligne. */
  .dossiers-ligne{ flex-wrap:wrap; row-gap:8px; }
  .dossiers-ligne-principal{ flex:1 1 100%; }

  /* Sections repliables : le titre tronque proprement (ellipsis) plutôt
     que de repousser le chevron hors de vue. min-width:0 est
     nécessaire ici : sans lui, un enfant flex refuse par défaut de
     rétrécir sous sa largeur de contenu et l'ellipsis ne s'applique
     jamais. */
  .dashboard-carte-repliable-entete h2,
  .dashboard-section-repliable-entete h2{ min-width:0; font-size:14px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
}

@media (max-width:380px){
  .dashboard-entete h1{ font-size:19px; }
  .dashboard-stat-valeur{ font-size:24px; }
  .compte-info-valeur{ font-size:14px; }
  .dashboard-carte{ padding:16px 14px 14px; }
  .compte-carte{ padding:22px 16px; }
}
