/* Desktop-style condensed week/month summaries, independent of post-card sizing. */
#calendar #calendarItems.calendar-condensed .calendar-day-summary{display:grid!important;position:static!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:none!important;gap:6px!important;margin:0!important;padding:9px!important;overflow:visible!important;white-space:normal!important;text-align:left;border:1px solid #d3dfd7!important;border-radius:9px!important;background:#fff!important;color:#17241c!important;box-shadow:none!important}
#calendar #calendarItems.calendar-condensed .calendar-day-summary>*{display:block!important;position:static!important;max-height:none!important;overflow:visible!important;white-space:normal!important;color:inherit!important}
#calendar #calendarItems.calendar-condensed .calendar-day-summary strong{font-size:14px!important;line-height:1.3!important}
#calendar #calendarItems.calendar-condensed .calendar-day-summary small{font-size:11px!important;line-height:1.35!important;color:#63716a!important}
#calendar #calendarItems.calendar-condensed .calendar-day-summary i{font-size:10px!important;font-style:normal}
#calendar #calendarItems .calendar-day-summary .calendar-platform-summary{display:flex!important;flex-wrap:wrap!important;gap:5px!important;align-items:center!important;width:auto!important;max-width:none!important}
#calendar #calendarItems .calendar-platform-count{display:inline-flex!important;gap:2px!important;align-items:center!important}
#calendar #calendarItems .calendar-platform-count img{width:15px!important;height:15px!important;object-fit:contain!important}
#calendar #calendarItems .calendar-platform-count b{font-size:10px!important;font-weight:400!important;color:#63716a!important}
#calendar #calendarItems.calendar-condensed .calendar-day-slots{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:0!important;background:none!important}
#calendar #calendarItems.calendar-week-view.calendar-condensed{align-items:stretch;min-height:220px}
#calendar #calendarItems.calendar-week-view.calendar-condensed .calendar-week-day{padding:0!important}
#calendar #calendarItems.calendar-week-view.calendar-condensed .calendar-week-day>header{margin:0!important;padding:6px 8px!important;min-height:48px!important}
#calendar #calendarItems .calendar-summary-details{padding:0 8px 12px}
#calendar #calendarItems.calendar-month-view{grid-template-rows:28px repeat(var(--calendar-month-weeks,6),minmax(0,1fr))!important;gap:0!important;padding:0!important;min-height:0!important}
#calendar #calendarItems .calendar-month-weekday{box-sizing:border-box;padding:8px 12px;font-size:10px;text-transform:uppercase;color:#65766c;border-bottom:1px solid #d5dfd9}
#calendar #calendarItems.calendar-month-view .calendar-week-day{display:flex!important;flex-direction:column!important;padding:0!important;min-height:0!important;background:#fff!important;box-shadow:none!important;overflow:visible!important}
#calendar #calendarItems.calendar-month-view .calendar-week-day>header{display:flex!important;position:static!important;min-height:44px!important;height:auto!important;padding:6px 12px!important;margin:0!important;border:0!important;background:transparent!important}
#calendar #calendarItems.calendar-month-view .calendar-week-day>header strong{display:block!important;margin-right:auto!important;width:auto!important;height:auto!important;padding:0!important;background:none!important;color:#17241c!important;font-size:12px!important}
#calendar #calendarItems.calendar-month-view .calendar-week-day.today>header strong{display:grid!important;place-items:center!important;width:28px!important;height:28px!important;border-radius:50%!important;background:#138a3d!important;color:#fff!important}
#calendar #calendarItems.calendar-month-view .calendar-week-day.today{background:#e1f3e6!important}
#calendar #calendarItems.calendar-month-view .calendar-day-summary{border:0!important;border-radius:0!important;padding:0 12px 12px!important;background:transparent!important}
#calendar #calendarItems.calendar-month-view .calendar-day-summary strong{font-size:11px!important;color:#17633b!important}
#calendar #calendarItems.calendar-month-view .outside-month{opacity:.45!important}
html[data-theme="dark"] #calendar #calendarItems.calendar-condensed .calendar-day-summary,html[data-theme="dark"] #calendar #calendarItems.calendar-month-view .calendar-week-day{background:#101813!important;color:#edf5ef!important;border-color:#293a32!important}
html[data-theme="dark"] #calendar #calendarItems.calendar-month-view .calendar-week-day>header strong{color:#edf5ef!important}

/* v1.16.61: fill the workspace and use a circle exclusively for today. */
.workspace:has(#calendar:not(.hidden)){padding:clamp(10px,1.25vw,24px)!important;min-width:0!important;overflow:hidden!important}
.workspace>#calendar:not(.hidden){width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;margin:0!important;overflow:hidden!important}
#calendar:not(.hidden)>.panel.calendar{min-height:0!important;container-type:size;container-name:calendar-space}
#calendar #calendarItems{min-width:0!important;width:100%!important;scrollbar-gutter:auto!important}
#calendar #calendarItems.calendar-week-view{grid-template-columns:repeat(7,minmax(0,1fr))!important}
#calendar #calendarItems.calendar-month-view{flex:1 1 0!important;min-height:0!important;height:auto!important;align-content:stretch!important;overflow:hidden!important;grid-template-columns:repeat(7,minmax(0,1fr))!important}
#calendar #calendarItems.calendar-month-view .calendar-week-day{min-width:0!important;min-height:0!important;height:auto!important;overflow:hidden!important}
#calendar #calendarItems.calendar-month-view .calendar-week-day>header{flex:0 0 auto!important;min-height:36px!important;padding:4px 8px!important}
#calendar #calendarItems.calendar-month-view .calendar-week-day>header strong{border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;background:none!important}
#calendar #calendarItems.calendar-month-view .calendar-week-day.today>header strong{border-radius:50%!important;background:#138a3d!important;color:#fff!important}
#calendar #calendarItems.calendar-month-view .calendar-week-day>header strong::before,#calendar #calendarItems.calendar-month-view .calendar-week-day>header strong::after{content:none!important}
#calendar #calendarItems.calendar-month-view .calendar-day-slots{flex:1 1 0!important;min-height:0!important;overflow:auto!important;scrollbar-width:thin}
#calendar #calendarItems.calendar-month-view .calendar-day-summary{gap:4px!important;padding:0 8px 6px!important}
#calendar #calendarItems.calendar-month-view .calendar-month-weekday{padding:6px 8px}
#calendar #calendarItems.calendar-month-view .calendar-day-add{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important;padding:0!important;font-size:18px!important}
@container calendar-space (max-height:620px){
  #calendar #calendarItems.calendar-month-view .calendar-week-day>header{min-height:28px!important;padding:2px 6px!important}
  #calendar #calendarItems.calendar-month-view .calendar-day-summary{gap:2px!important;padding:0 6px 4px!important}
  #calendar #calendarItems.calendar-month-view .calendar-day-summary small{font-size:10px!important;line-height:1.2!important}
  #calendar #calendarItems.calendar-month-view .calendar-day-add{width:24px!important;min-width:24px!important;height:24px!important;min-height:24px!important}
  #calendar #calendarItems.calendar-month-view .calendar-week-day.today>header strong{width:24px!important;height:24px!important}
  #calendar #calendarItems.calendar-month-view .calendar-platform-count img{width:12px!important;height:12px!important}
  #calendar #calendarItems.calendar-month-view .calendar-platform-summary{gap:3px!important}
}
@container calendar-space (max-width:850px){
  #calendar #calendarItems.calendar-month-view .calendar-week-day>header{padding-left:4px!important;padding-right:4px!important}
  #calendar #calendarItems.calendar-month-view .calendar-day-summary{padding-left:4px!important;padding-right:4px!important}
  #calendar #calendarItems.calendar-month-view .calendar-platform-summary{gap:3px!important}
  #calendar #calendarItems.calendar-month-view .calendar-platform-count img{width:12px!important;height:12px!important}
}

/* All views and densities share the available panel, with contained overflow. */
#calendar #calendarItems{min-height:0!important;max-height:100%!important;box-sizing:border-box!important}
/* One scroll owner for the entire week; every day follows the same offset. */
#calendar #calendarItems.calendar-week-view{flex:1 1 0!important;align-items:stretch!important;grid-template-rows:minmax(100%,max-content)!important;overflow-x:hidden!important;overflow-y:auto!important;scrollbar-gutter:stable!important}
#calendar #calendarItems.calendar-week-view .calendar-week-day{display:flex!important;flex-direction:column!important;min-width:0!important;min-height:0!important;height:auto!important;overflow:visible!important}
#calendar #calendarItems.calendar-week-view .calendar-week-day>header{flex:0 0 auto!important;min-width:0!important;padding:6px!important}
#calendar #calendarItems.calendar-week-view .calendar-day-slots{flex:1 0 auto!important;min-width:0!important;min-height:0!important;height:auto!important;max-height:none!important;overflow:visible!important}
#calendar #calendarItems.calendar-day-view .calendar-day-agenda,
#calendar #calendarItems.calendar-day-view .calendar-time-table{min-width:0!important;width:100%!important}
#calendar #calendarItems.calendar-day-view .calendar-time-row{grid-template-columns:clamp(42px,4cqw,72px) minmax(0,1fr)!important;min-height:clamp(36px,6cqh,64px)!important}
#calendar #calendarItems.calendar-day-view .calendar-day-slots{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(min(100%,clamp(180px,18cqw,280px)),1fr))!important;align-content:start!important;gap:8px!important;min-width:0!important;min-height:clamp(36px,6cqh,64px)!important;padding:6px!important}
#calendar #calendarItems.calendar-day-view.calendar-condensed .calendar-day-summary{grid-column:1/-1!important}
#calendar #calendarItems .calendar-post-card{box-sizing:border-box!important;min-width:0!important;max-width:100%!important;width:100%!important}
#calendar #calendarItems.calendar-day-view .calendar-post-card{height:clamp(110px,18cqh,150px)!important;min-height:110px!important}
#calendar #calendarItems.calendar-week-view .calendar-post-card{height:auto!important;min-height:110px!important}
#calendar #calendarItems .calendar-card-copy{min-width:0!important;max-width:100%!important}
#calendar #calendarItems .calendar-card-title{overflow:hidden!important;text-overflow:ellipsis!important}
#calendar .calendar-top{min-width:0!important}
#calendar .calendar-top>*{min-width:0!important}
@container calendar-space (max-width:850px){
  #calendar #calendarItems.calendar-week-view .calendar-week-day>header{flex-wrap:wrap!important;padding:4px!important}
  #calendar #calendarItems.calendar-week-view .calendar-day-summary{padding:5px!important;gap:4px!important}
  #calendar #calendarItems.calendar-week-view .calendar-day-summary strong{font-size:12px!important}
  #calendar #calendarItems.calendar-week-view .calendar-platform-count img{width:12px!important;height:12px!important}
  #calendar #calendarItems.calendar-week-view .calendar-day-add{width:24px!important;min-width:24px!important;height:24px!important;padding:0!important}
}
/* Toolbar breakpoints follow workspace width, including an open sidebar. */
.workspace>#calendar:not(.hidden){container-type:inline-size;container-name:calendar-layout}
#calendar:not(.hidden)>.calendar-top{--calendar-control-band:clamp(420px,38cqw,720px);display:grid!important;grid-template-columns:minmax(180px,1fr) var(--calendar-control-band) minmax(300px,440px)!important;grid-template-areas:"title modes nav" "actions actions counters"!important;max-height:45%!important;overflow:auto!important;flex-shrink:0!important}
#calendar .calendar-modes{max-width:100%!important}
#calendar .calendar-actions{min-width:0!important;flex-wrap:wrap!important}
#calendar .calendar-action-center{min-width:0!important;max-width:100%!important;flex:1 1 420px!important}
#calendar .calendar-action-left{max-width:100%!important}
#calendar .calendar-filters select{min-width:0!important;max-width:100%!important}
@container calendar-layout (max-width:1500px){
  #calendar:not(.hidden)>.calendar-top{grid-template-columns:minmax(0,1fr) minmax(300px,440px)!important;grid-template-areas:"title nav" "modes modes" "actions actions" "counters counters"!important}
}
@container calendar-layout (max-width:900px){
  #calendar:not(.hidden)>.calendar-top{display:flex!important;flex-direction:column!important;align-items:stretch!important;--calendar-control-band:100%}
  #calendar .calendar-actions{flex-direction:column!important;align-items:stretch!important}
  #calendar .calendar-action-center{width:100%!important;flex:0 0 auto!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #calendar .calendar-action-left,#calendar .calendar-action-left .calendar-filters{width:100%!important;flex:1 1 auto!important}
  #calendar .calendar-head>div:nth-child(2){min-width:0!important;max-width:100%!important;flex-wrap:wrap!important}
}
