/* DSA CRM v12.9 — planning réellement compact et priorité à la grille. */

/* Le titre existe déjà dans la barre globale : sa répétition dans le planning
   consommait une ligne entière sur les écrans de portable. */
#v-calendar .v1169-planning-title{display:none!important}

/* Une seule ligne de commandes dès que la largeur le permet. */
#v-calendar .v1169-planning-bar{
  grid-template-columns:max-content minmax(120px,200px) minmax(245px,1fr) max-content!important;
  grid-template-areas:"nav site view new"!important;
  align-items:center!important;
  gap:6px!important;
  min-height:44px!important;
  margin:5px 6px 3px!important;
  padding:4px 5px!important;
  border-radius:15px!important;
}
#v-calendar .v1169-planning-bar .v9-calendar-nav{min-height:32px!important;gap:4px!important}
#v-calendar .v1169-planning-bar .v9-calendar-nav .btn{
  min-width:30px!important;
  height:32px!important;
  min-height:32px!important;
  padding:0 9px!important;
  font-size:10px!important;
}
#v-calendar .v1169-planning-bar .v9-calendar-nav strong{margin-left:3px!important;font-size:10.5px!important}
#v-calendar .v1169-planning-bar .v9-calendar-site-select select,
#v-calendar .v1169-planning-bar .v9-calendar-site-fixed,
#v-calendar .v1169-planning-bar .v9-week-kind,
#v-calendar .v1169-planning-bar .v9-calendar-modes{
  height:32px!important;
  min-height:32px!important;
}
#v-calendar .v1169-planning-bar .v9-calendar-site-select select,
#v-calendar .v1169-planning-bar .v9-calendar-site-fixed{font-size:10.5px!important}
#v-calendar .v1169-planning-bar .v9-calendar-view-controls{grid-template-columns:minmax(145px,1fr) 102px!important;gap:5px!important}
#v-calendar .v1169-planning-bar .v9-week-kind{font-size:9.5px!important}
#v-calendar .v1169-planning-bar .v9-calendar-modes{padding:2px!important}
#v-calendar .v1169-planning-bar .v9-calendar-modes button{height:26px!important;padding:0 6px!important;font-size:9.5px!important}
#v-calendar .v1169-new-rdv{height:34px!important;min-height:34px!important;padding:0 13px!important;font-size:10.5px!important}

/* La légende et l'en-tête des jours ne doivent plus prendre la place des RDV. */
#v-calendar .v9-calendar-legend{
  flex-wrap:nowrap!important;
  min-height:25px!important;
  max-height:25px!important;
  margin:0 6px 3px!important;
  padding:1px 2px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none;
}
#v-calendar .v9-calendar-legend::-webkit-scrollbar{display:none}
#v-calendar .v9-calendar-legend span{flex:0 0 auto;min-height:22px!important;padding:2px 7px 2px 5px!important;font-size:9px!important}
#v-calendar .v9-gcal-head{min-height:42px!important}
#v-calendar .v9-gcal-head button{height:42px!important;padding:2px 0!important}
#v-calendar .v9-gcal-head button span{font-size:8px!important}
#v-calendar .v9-gcal-head button strong{width:26px!important;height:26px!important;font-size:14px!important}
#v-calendar .v9-calendar-shell.v1169-calendar{border-radius:17px!important}

/* Sur le planning uniquement, la barre globale perd sa hauteur superflue. */
body.dsa-calendar-active .topbar{height:46px!important;min-height:46px!important;padding:0 12px!important;gap:9px!important}
body.dsa-calendar-active .topbar .tb-title{font-size:16px!important}
body.dsa-calendar-active .topbar .v110-search{flex-basis:310px!important;min-width:190px!important}
body.dsa-calendar-active .topbar .v110-search-box{height:32px!important}
body.dsa-calendar-active #app .content.v1187-calendar-content{padding:6px 8px 8px!important}

/* :has() couvre immédiatement les navigateurs modernes ; la classe posée par
   v12.9.js garde exactement le même rendu sur les moteurs plus anciens. */
body:has(#v-calendar.view.on) .topbar{height:46px!important;min-height:46px!important;padding:0 12px!important;gap:9px!important}
body:has(#v-calendar.view.on) .topbar .tb-title{font-size:16px!important}
body:has(#v-calendar.view.on) .topbar .v110-search-box{height:32px!important}
body:has(#v-calendar.view.on) #app .content.v1187-calendar-content{padding:6px 8px 8px!important}

@media(max-width:980px){
  #v-calendar .v1169-planning-bar{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"nav new" "site view"!important;
    gap:5px!important;
  }
  #v-calendar .v1169-planning-bar .v9-calendar-nav{overflow-x:auto!important;scrollbar-width:none}
  #v-calendar .v1169-planning-bar .v9-calendar-nav::-webkit-scrollbar{display:none}
  #v-calendar .v1169-planning-bar .v9-calendar-view-controls{grid-template-columns:minmax(135px,1fr) 96px!important}
}

@media(max-width:640px){
  body.dsa-calendar-active .topbar{display:flex!important;flex-wrap:nowrap!important;height:44px!important;min-height:44px!important;padding:0 8px!important}
  body.dsa-calendar-active .topbar .v110-search{display:none!important}
  body.dsa-calendar-active .topbar #topbar-extra{display:none!important}
  #v-calendar .v1169-planning-bar{grid-template-areas:"nav new" "site site" "view view"!important}
  #v-calendar .v1169-planning-bar .v9-calendar-nav strong{font-size:9.5px!important}
  #v-calendar .v1169-new-rdv{padding-inline:10px!important;font-size:0!important}
  #v-calendar .v1169-new-rdv::after{content:"+ RDV";font-size:10px}
  #v-calendar .v9-gcal-head{grid-template-columns:50px repeat(var(--day-count,5),minmax(136px,1fr))!important}
  #v-calendar .v9-gcal-scroll{grid-template-columns:50px minmax(0,1fr)!important}
  #v-calendar .v9-gcal-hours{width:50px!important}
}

@media(max-height:760px) and (min-width:981px){
  #v-calendar .v1169-planning-bar{min-height:40px!important;margin-top:3px!important;margin-bottom:2px!important;padding-block:3px!important}
  #v-calendar .v9-calendar-legend{min-height:23px!important;max-height:23px!important;margin-bottom:2px!important}
  #v-calendar .v9-gcal-head,#v-calendar .v9-gcal-head button{height:38px!important;min-height:38px!important}
}

