/* Agenda: un solo desplazamiento vertical visible y superficie de trabajo estable. */
@media (min-width:901px){
  .main-area:has(.agenda-workspace){
    display:flex;
    min-height:0;
    flex-direction:column;
    overflow:hidden;
  }
  .main-area:has(.agenda-workspace)>.topbar{flex:0 0 68px}
  .view:has(.agenda-workspace){
    display:flex;
    width:100%;
    height:calc(100% - 68px);
    min-height:0;
    flex-direction:column;
    overflow:hidden;
    padding-top:20px;
    padding-bottom:16px;
  }
  .view:has(.agenda-workspace)>.page-head,
  .view:has(.agenda-workspace)>.timezone-banner,
  .view:has(.agenda-workspace)>.agenda-rule-strip,
  .view:has(.agenda-workspace)>.agenda-toolbar{flex:0 0 auto}
  .view:has(.agenda-workspace)>.agenda-toolbar{
    position:relative;
    top:auto;
  }
  .agenda-workspace{
    flex:1 1 auto;
    min-height:0;
    align-items:stretch;
  }
  .week-calendar{
    display:flex;
    height:100%;
    min-height:0;
    flex-direction:column;
  }
  .agenda-week-view .week-calendar-scroll,
  .agenda-day-view .week-calendar-scroll{
    flex:1 1 auto;
    height:auto;
    min-height:0;
    overflow:auto;
    overscroll-behavior:contain;
  }
  .agenda-month-view .month-calendar,
  .agenda-list-view .agenda-list{
    flex:1 1 auto;
    min-height:0;
    overflow:auto;
  }
  .calendar-legend{flex:0 0 auto}
  .agenda-editor{
    position:relative;
    top:auto;
    height:100%;
    max-height:none;
    min-height:0;
    overflow:auto;
    overscroll-behavior:contain;
  }
}

/* En tablet y móvil el documento es el único scroll vertical. */
@media (max-width:900px){
  .agenda-week-view .week-calendar-scroll,
  .agenda-day-view .week-calendar-scroll{
    height:auto;
    min-height:0;
    overflow-x:auto;
    overflow-y:visible;
    scrollbar-gutter:auto;
  }
}
