/* AZALYS V5.43 — Densité compacte écran
   Objectif : réduire la taille ressentie de l'interface sans casser la lisibilité.
   Chargé en dernier pour prendre le dessus sur les styles premium.
*/

:root{
  --az-density-font-base: 13px;
  --az-density-font-small: 11.5px;
  --az-density-title-h2: 20px;
  --az-density-title-h3: 16px;
  --az-density-radius-card: 18px;
  --az-density-gap: 12px;
}

/* Police globale un peu plus petite */
body{
  font-size:var(--az-density-font-base)!important;
  line-height:1.42!important;
}

/* Topbar moins haute */
body:not(.role-client-dossier) #main-screen .topbar,
.topbar{
  min-height:58px!important;
  padding:9px 22px!important;
}

.topbar h2,
body:not(.role-client-dossier) #main-screen .topbar h2{
  font-size:var(--az-density-title-h2)!important;
  line-height:1.15!important;
}

.eyebrow,
body:not(.role-client-dossier) #main-screen .topbar .eyebrow{
  font-size:10px!important;
  letter-spacing:.075em!important;
}

/* Sidebar plus compacte */
.side{
  width:248px!important;
}

.side-brand{
  padding:14px 14px!important;
  min-height:60px!important;
}

.side-brand strong{
  font-size:14px!important;
}

.side-brand span{
  font-size:11px!important;
}

.side-nav{
  padding:12px 8px!important;
  gap:5px!important;
}

.nav-btn{
  min-height:38px!important;
  padding:9px 12px!important;
  border-radius:12px!important;
  font-size:13px!important;
  line-height:1.25!important;
}

.nav-badge{
  min-width:18px!important;
  height:18px!important;
  font-size:10px!important;
}

.side-footer{
  padding:10px 8px!important;
}

.side-footer .btn{
  min-height:38px!important;
  font-size:12px!important;
}

/* Contenu : moins d'espace perdu */
.view{
  padding:18px 22px!important;
}

.card,
.kpi,
.module-card,
.hero,
.client-card,
.collab-pro-card,
.dossier-card,
.cabinet-thread-focus-panel,
.cabinet-conversation-list-panel,
.internal-contacts-panel,
.internal-thread-panel{
  border-radius:var(--az-density-radius-card)!important;
}

.card{
  padding:16px!important;
}

.card h3,
.card-head h3,
.hero h1{
  font-size:var(--az-density-title-h3)!important;
  line-height:1.22!important;
}

.muted,
.card p,
small{
  font-size:12px!important;
}

/* Boutons et champs moins grands */
.btn,
.control,
input,
select,
textarea,
button{
  font-size:12.5px!important;
}

.btn{
  min-height:34px!important;
  padding:8px 12px!important;
  border-radius:11px!important;
}

.btn.compact,
.compact{
  min-height:30px!important;
  padding:6px 10px!important;
}

.control,
input.control,
select.control,
textarea.control{
  min-height:36px!important;
  padding:8px 11px!important;
  border-radius:11px!important;
}

/* Badges plus discrets */
.badge,
.status-pill{
  min-height:26px!important;
  padding:5px 9px!important;
  font-size:11px!important;
}

/* Tableaux et listes */
.table-wrap table,
table{
  font-size:12px!important;
}

th,
td{
  padding:8px 9px!important;
}

/* Messageries : garder la hauteur, mais réduire la taille visuelle interne */
.internal-premium-v167 .internal-workspace{
  gap:14px!important;
  grid-template-columns:minmax(270px,330px) minmax(0,1fr)!important;
}

.internal-premium-v167 .internal-contacts-panel{
  padding:12px 12px!important;
}

.internal-sidebar-title h3{
  font-size:15px!important;
}

.internal-toolbar-actions{
  gap:7px!important;
}

.internal-premium-v167 .internal-action-btn-inline{
  min-height:34px!important;
  padding:0 12px!important;
  border-radius:10px!important;
}

.internal-search-wrap .control{
  min-height:34px!important;
}

.internal-premium-v167 .internal-contact{
  min-height:58px!important;
  padding:8px 10px!important;
  border-radius:15px!important;
  grid-template-columns:40px minmax(0,1fr) auto!important;
}

.internal-premium-v167 .internal-contact-avatar,
.internal-premium-v167 .internal-avatar{
  width:40px!important;
  height:40px!important;
  border-radius:13px!important;
  font-size:.95rem!important;
}

.internal-premium-v167 .internal-thread-head{
  padding:14px 18px!important;
}

.internal-premium-v167 .internal-thread-title h3{
  font-size:16px!important;
}

.internal-premium-v167 .internal-thread-body{
  padding:18px 20px!important;
  gap:10px!important;
}

.internal-premium-v167 .internal-bubble{
  padding:10px 13px!important;
  font-size:12.5px!important;
}

.internal-premium-v167 .internal-composer{
  padding:11px 16px 12px!important;
}

.internal-composer-box{
  min-height:48px!important;
  border-radius:16px!important;
}

.internal-composer-box textarea{
  min-height:36px!important;
  height:36px!important;
  font-size:12.5px!important;
}

.internal-send-btn{
  width:38px!important;
  height:38px!important;
  border-radius:12px!important;
}

/* Messages clients */
.cabinet-inbox-compact .cabinet-inbox-workspace-v3{
  gap:12px!important;
  grid-template-columns:minmax(260px,300px) minmax(0,1fr) minmax(220px,250px)!important;
}

.cabinet-conversation-list-head-compact{
  gap:8px!important;
}

.cabinet-conversation-item{
  padding:9px 10px!important;
  border-radius:14px!important;
}

.cabinet-thread-focus-head{
  padding:14px 18px!important;
}

.cabinet-thread-focus-title h3{
  font-size:16px!important;
}

.cabinet-thread-focus-body{
  padding:16px 18px!important;
}

.cabinet-chat-bubble{
  padding:10px 12px!important;
  border-radius:14px!important;
}

.cabinet-thread-focus-compose{
  padding:12px 16px!important;
}

/* Boutons flottants : un peu plus petits */
.client-chat-btn,
.cabinet-chat-btn,
.internal-chat-btn{
  width:52px!important;
  height:52px!important;
  border-radius:17px!important;
}

.ai-companion-floating{
  transform:scale(.88)!important;
  transform-origin:bottom right!important;
}

/* Sélecteur de langue plus discret */
.azalys-language-toggle{
  min-height:32px!important;
  padding:6px 8px!important;
  gap:5px!important;
  font-size:11px!important;
}

.azalys-language-toggle .az-lang-current{
  min-width:24px!important;
  padding:5px 7px!important;
}

.azalys-language-toggle .az-lang-next{
  min-width:22px!important;
}

/* Responsive : ne pas trop écraser sur téléphone */
@media(max-width:1000px){
  .side{
    width:100%!important;
  }
  .view{
    padding:14px!important;
  }
  .internal-premium-v167 .internal-workspace,
  .cabinet-inbox-compact .cabinet-inbox-workspace-v3{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:640px){
  body{
    font-size:13px!important;
  }
  .topbar h2{
    font-size:18px!important;
  }
  .nav-btn{
    min-height:36px!important;
    font-size:12.5px!important;
  }
}


/* V5.44 — Collaborateurs : suppression des KPI inutiles */
#collab-kpi-grid,
.collab-pro-kpis{
  display:none!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}


/* V5.45 — Regroupement plus propre des actions de conversation */
.internal-toolbar-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  margin-top:8px!important;
}
.internal-toolbar-actions .badge{
  grid-column:1 / -1!important;
  justify-self:start!important;
}
.internal-toolbar-actions .internal-action-btn-inline{
  width:100%!important;
  justify-content:center!important;
  min-width:0!important;
}

.cabinet-conversation-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  align-items:center!important;
  gap:8px!important;
}
.cabinet-conversation-actions .badge{
  grid-column:1 / -1!important;
  justify-self:start!important;
}
.cabinet-conversation-actions .btn{
  width:100%!important;
  justify-content:center!important;
  min-width:0!important;
}

/* AZALYS V5.55 — Messages internes : composer pleine largeur + anti-rebond */
html body:not(.role-client-dossier) #main-screen .internal-composer{
  width:100%!important;
  box-sizing:border-box!important;
}
html body:not(.role-client-dossier) #main-screen .internal-composer-box{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) 38px 48px!important;
  align-items:center!important;
  width:100%!important;
  box-sizing:border-box!important;
  gap:8px!important;
}
html body:not(.role-client-dossier) #main-screen .internal-composer-box #internal-body,
html body:not(.role-client-dossier) #main-screen .internal-composer-box textarea#internal-body{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  justify-self:stretch!important;
  grid-column:auto!important;
  box-sizing:border-box!important;
}
html body:not(.role-client-dossier) #main-screen .internal-composer-box .internal-compose-icon,
html body:not(.role-client-dossier) #main-screen .internal-composer-box .internal-send-btn{
  flex:0 0 auto!important;
  justify-self:center!important;
}
html body:not(.role-client-dossier) #main-screen .internal-thread-body,
html body:not(.role-client-dossier) #main-screen #internal-chat-thread{
  scroll-behavior:auto!important;
  overflow-anchor:none!important;
}
body.az-view-internal-messages #internal-chat-floating,
body.az-view-internal-messages #client-chat-floating,
body.az-view-internal-messages #cabinet-chat-floating,
body.az-view-internal-messages #ai-floating{
  display:none!important;
}
@media (max-width:640px){
  html body:not(.role-client-dossier) #main-screen .internal-composer-box{
    grid-template-columns:34px minmax(0,1fr) 34px 42px!important;
  }
}
