/* SilaLink Admin Layout Balance
 * Réduit l'effet ultra-large, restaure les fonds utiles et compacte les cartes métier.
 */
:root{
  --sl-balanced-max:1480px;
  --sl-balanced-gap:18px;
}

/* Les pages de configuration gardent une largeur lisible. */
body.sl-admin-ui .main-content > [class$="-page"],
body.sl-admin-ui .main-content > [class*="-page "],
body.sl-admin-ui .main-content > .sl-admin-page,
body.sl-admin-ui .main-content > .content-wrapper,
body.sl-admin-ui .main-content > .page-content{
  width:min(100%,var(--sl-balanced-max))!important;
  max-width:var(--sl-balanced-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Les vues opérationnelles et catalogue restent larges. */
body.sl-admin-ui .main-content.sl-orders-page,
body.sl-admin-ui .main-content.sl-catalog-page,
body.sl-admin-ui .main-content.sl-order-analysis-v3,
body.sl-admin-ui .main-content.sl-stats-analysis-v3,
body.sl-admin-ui .main-content > .orders-page,
body.sl-admin-ui .main-content > .order-page,
body.sl-admin-ui .main-content > .sl-catalog-page{
  max-width:none!important;
  width:100%!important;
}

/* Les bandeaux restent larges mais ne débordent plus ni ne coupent leur contenu. */
body.sl-admin-ui .main-content .sl-admin-hero,
body.sl-admin-ui .main-content .sl-hero-card,
body.sl-admin-ui .main-content .mk-hero,
body.sl-admin-ui .main-content .wa-hero,
body.sl-admin-ui .main-content .modules-hero,
body.sl-admin-ui .main-content .delivery-hero,
body.sl-admin-ui .main-content .drivers-hero,
body.sl-admin-ui .main-content .audit-hero,
body.sl-admin-ui .main-content .page-hero,
body.sl-admin-ui .main-content [class$="-hero"]{
  left:0!important;
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:24px!important;
  padding-right:24px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

/* Restaure les surfaces disparues sans réintroduire des blocs imbriqués lourds. */
body.sl-admin-ui .main-content > [class$="-page"],
body.sl-admin-ui .main-content > [class*="-page "]{
  background:transparent!important;
}
body.sl-admin-ui .main-content .card,
body.sl-admin-ui .main-content .panel,
body.sl-admin-ui .main-content .sl-admin-card,
body.sl-admin-ui .main-content .module-card,
body.sl-admin-ui .main-content .sl-catalog-panel{
  background:#fff!important;
}
body.sl-admin-ui .main-content .card .card,
body.sl-admin-ui .main-content .panel .panel,
body.sl-admin-ui .main-content .sl-admin-card .sl-admin-card{
  background:#f8fafc!important;
}

/* Modules & services : format tuiles dense et rapide à parcourir. */
body.sl-admin-ui .modules-page{
  width:100%!important;
  max-width:none!important;
  padding:0 14px 32px!important;
  background:#f3f6fa!important;
}
body.sl-admin-ui .modules-page .modules-hero{
  margin-left:-14px!important;
  margin-right:-14px!important;
  width:calc(100% + 28px)!important;
  padding:14px 18px!important;
  margin-bottom:10px!important;
}
body.sl-admin-ui .modules-page .modules-hero h1{
  font-size:24px!important;
  margin-bottom:3px!important;
}
body.sl-admin-ui .modules-page .modules-hero p{
  font-size:12px!important;
  line-height:1.35!important;
}
body.sl-admin-ui .modules-page .modules-soft{
  padding:7px 10px!important;
  border-radius:8px!important;
  font-size:11px!important;
}
body.sl-admin-ui .modules-page .modules-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:9px!important;
  max-width:1540px!important;
  margin:0 auto!important;
  align-items:stretch!important;
}
body.sl-admin-ui .modules-page .module-card{
  min-height:210px!important;
  padding:12px!important;
  border-radius:8px!important;
  box-shadow:none!important;
}
body.sl-admin-ui .modules-page .module-logo{
  height:34px!important;
  margin:5px 0!important;
}
body.sl-admin-ui .modules-page .brevo-wordmark,
body.sl-admin-ui .modules-page .haccp-wordmark,
body.sl-admin-ui .modules-page .staff-wordmark,
body.sl-admin-ui .modules-page .procurement-wordmark{
  font-size:18px!important;
  gap:7px!important;
}
body.sl-admin-ui .modules-page .brevo-mark,
body.sl-admin-ui .modules-page .haccp-mark,
body.sl-admin-ui .modules-page .staff-mark,
body.sl-admin-ui .modules-page .procurement-mark{
  width:28px!important;
  height:28px!important;
  border-radius:7px!important;
}
body.sl-admin-ui .modules-page .module-card h2{
  font-size:15px!important;
  margin-bottom:3px!important;
}
body.sl-admin-ui .modules-page .module-card > p{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  min-height:32px!important;
  font-size:11px!important;
  line-height:1.35!important;
}
body.sl-admin-ui .modules-page .module-meta{
  gap:4px!important;
  margin:7px 0!important;
}
body.sl-admin-ui .modules-page .module-meta div{
  padding:5px 0!important;
}
body.sl-admin-ui .modules-page .module-meta span{
  font-size:8px!important;
}
body.sl-admin-ui .modules-page .module-meta strong{
  margin-top:2px!important;
  font-size:11px!important;
  line-height:1.25!important;
}
body.sl-admin-ui .modules-page .module-status{
  padding-top:6px!important;
  gap:5px!important;
  flex-wrap:nowrap!important;
}
body.sl-admin-ui .modules-page .module-status > *{
  min-width:0!important;
}
body.sl-admin-ui .modules-page .module-btn{
  min-height:30px!important;
  padding:5px 8px!important;
  border-radius:6px!important;
  font-size:10px!important;
  white-space:nowrap!important;
}
body.sl-admin-ui .modules-page .status-pill,
body.sl-admin-ui .modules-page .module-badge{
  padding:4px 6px!important;
  font-size:8px!important;
  white-space:nowrap!important;
}
body.sl-admin-ui .modules-page .haccp-offers{
  grid-template-columns:1fr!important;
  gap:5px!important;
  margin-top:7px!important;
}
body.sl-admin-ui .modules-page .haccp-offer{
  padding:7px!important;
  border-radius:6px!important;
}
body.sl-admin-ui .modules-page .haccp-offer strong{
  font-size:15px!important;
}
body.sl-admin-ui .modules-page .haccp-offer small{
  margin:2px 0 6px!important;
  font-size:9px!important;
}

@media(max-width:1450px){
  body.sl-admin-ui .modules-page .modules-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:1080px){
  body.sl-admin-ui .modules-page .modules-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  :root{--sl-balanced-gap:10px}
  body.sl-admin-ui .main-content > [class$="-page"],
  body.sl-admin-ui .main-content > [class*="-page "]{max-width:none!important}
  body.sl-admin-ui .modules-page{padding-left:8px!important;padding-right:8px!important}
  body.sl-admin-ui .modules-page .modules-hero{margin-left:-8px!important;margin-right:-8px!important;width:calc(100% + 16px)!important}
  body.sl-admin-ui .modules-page .modules-grid{grid-template-columns:1fr!important}
  body.sl-admin-ui .modules-page .module-card{min-height:0!important}
  body.sl-admin-ui .modules-page .module-status{flex-wrap:wrap!important}
}
