/* COBAT V2.3.22 — informations légales communes PC / mobile */
.cobat-legal-v2321{
  box-sizing:border-box;
  width:100%;
  margin:18px 0 0;
  border-top:1px solid #dbe4ec;
  background:#f7f9fb;
  color:#60758a;
  font-family:inherit;
  font-size:11px;
  line-height:1.45;
  position:relative;
  z-index:8;
}
.cobat-legal-v2321 *{box-sizing:border-box}
.cobat-legal-v2321-inner{
  max-width:1600px;
  margin:0 auto;
  padding:13px 18px 14px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
}
.cobat-legal-v2321-copy{min-width:0;display:grid;gap:3px}
.cobat-legal-v2321-owner{color:#24445f;font-size:11px;font-weight:600}
.cobat-legal-v2321-ref{font-size:10px;color:#74899d}
.cobat-legal-v2321-law{font-size:9px;color:#8799aa;max-width:1250px}
.cobat-legal-v2321-law a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.cobat-legal-v2321-bug{
  min-height:34px;
  padding:0 12px;
  border:1px solid #ccd9e4;
  border-radius:9px;
  background:#fff;
  color:#24445f;
  font:inherit;
  cursor:pointer;
  white-space:nowrap;
}
.cobat-legal-v2321-bug:hover{background:#f1f6fa;border-color:#afc3d3}
.cobat-legal-mobile-v2321{display:none}

@media (max-width:767px){
  /* Sur les modules mobiles, aucune barre légale ne prend de place dans l'interface terrain. */
  body:not(.cobat-portal-root-v2321) .cobat-legal-v2321{display:none!important}

  /* Sur l'accueil mobile uniquement : information compacte et repliable tout en bas. */
  body.cobat-portal-root-v2321 .cobat-legal-v2321{
    display:block;
    margin:10px 12px calc(78px + env(safe-area-inset-bottom,0px));
    width:auto;
    border:1px solid #dbe4ec;
    border-radius:12px;
    background:#fff;
    overflow:hidden;
  }
  body.cobat-portal-root-v2321 .cobat-legal-v2321-inner{display:none}
  body.cobat-portal-root-v2321 .cobat-legal-mobile-v2321{display:block}
  .cobat-legal-mobile-v2321 summary{
    list-style:none;
    min-height:44px;
    padding:0 13px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    color:#4f687e;
    font-size:11px;
    cursor:pointer;
    user-select:none;
  }
  .cobat-legal-mobile-v2321 summary::-webkit-details-marker{display:none}
  .cobat-legal-mobile-v2321 summary::after{content:'›';font-size:18px;line-height:1;transform:rotate(90deg);transition:transform .15s ease}
  .cobat-legal-mobile-v2321[open] summary::after{transform:rotate(-90deg)}
  .cobat-legal-mobile-v2321-content{
    border-top:1px solid #edf1f5;
    padding:10px 13px 12px;
    display:grid;
    gap:5px;
    font-size:9px;
    color:#7b8fa1;
  }
  .cobat-legal-mobile-v2321-content .owner{font-size:10px;color:#526d83}
}

@media (min-width:768px){
  /* Planning utilise un shell plein écran : on réserve une bande réelle au footer commun. */
  body.module-planning{overflow:hidden!important}
  body.module-planning .app-shell{
    height:calc(100% - 64px)!important;
    min-height:0!important;
  }
  body.module-planning > .cobat-legal-v2321{
    height:64px;
    margin:0;
    overflow:hidden;
  }
  body.module-planning > .cobat-legal-v2321 .cobat-legal-v2321-inner{
    padding-top:8px;
    padding-bottom:8px;
  }
}


/* =========================================================
   COBAT V2.3.22 — PORTAIL PC : FOOTER HORS DE LA SIDEBAR
   La sidebar du portail est fixe. Le footer commun est donc
   décalé de la largeur réelle de cette sidebar selon le viewport.
   ========================================================= */
@media (min-width:768px){
  body.cobat-portal-root-v2321 > .cobat-legal-v2321{
    margin-top:18px;
    margin-left:218px;
    width:calc(100% - 218px);
  }
}
@media (min-width:768px) and (max-width:1450px){
  body.cobat-portal-root-v2321 > .cobat-legal-v2321{
    margin-left:190px;
    width:calc(100% - 190px);
  }
}
@media (min-width:1800px) and (max-width:2299px){
  body.cobat-portal-root-v2321 > .cobat-legal-v2321{
    margin-left:238px;
    width:calc(100% - 238px);
  }
}
@media (min-width:2300px){
  body.cobat-portal-root-v2321 > .cobat-legal-v2321{
    margin-left:260px;
    width:calc(100% - 260px);
  }
}
