/* HUMANIZE 3.0 v2.7.12 — Calendario mensile isolato.
   File volutamente separato e versionato per non ereditare/cacheare i vecchi override. */
#content.s3-calendar-page{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
#content.s3-calendar-page>.s3-calendar{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  overflow-x:hidden!important;
}
#content.s3-calendar-page .s3-calendar-filters,
#content.s3-calendar-page .s3-calendar-toolbar{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.h3m12-month{
  box-sizing:border-box!important;
  background:#fff;
}
.h3m12-weekdays{
  box-sizing:border-box!important;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#f6f8f6;
}
.h3m12-weekdays>b{
  box-sizing:border-box!important;
  min-height:44px;
  margin:0!important;
  padding:10px 6px!important;
  border-right:1px solid var(--line);
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.h3m12-weekdays>b:last-child{border-right:0}
.h3m12-weeks{box-sizing:border-box!important}
.h3m12-week{
  box-sizing:border-box!important;
  border-bottom:1px solid var(--line);
  background:#fff;
}
.h3m12-week:last-child{border-bottom:0}
.h3m12-days{box-sizing:border-box!important;align-items:stretch!important}
.h3m12-day{
  box-sizing:border-box!important;
  padding:9px 9px 11px!important;
  border-right:1px solid var(--line);
  background:#fff;
  overflow:visible;
}
.h3m12-day:last-child{border-right:0}
.h3m12-day.outside{background:#f7f8f7;color:#9aa39e}
.h3m12-day.today{box-shadow:inset 0 0 0 2px var(--green);z-index:1}
.h3m12-day>header{
  display:flex!important;
  min-height:26px;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px;
}
.h3m12-day>header time{
  display:grid!important;
  min-width:24px;
  min-height:24px;
  place-items:center;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
}
.h3m12-day.today>header time{background:var(--dark);color:#fff}
.h3m12-day>header button{
  flex:0 0 auto;
  padding:2px 5px!important;
  border:0!important;
  background:transparent!important;
  color:var(--dark)!important;
  font-size:15px;
  line-height:1;
}
.h3m12-span-reserve{height:calc(var(--span-lanes,0) * 28px + 7px);min-height:7px}
.h3m12-day-events{display:grid!important;gap:5px;min-width:0}
.h3m12-day-events .s3-calendar-event{margin-top:0;padding:7px 8px;min-width:0}
.h3m12-span-layer{box-sizing:border-box!important}
.h3m12-span{
  pointer-events:auto!important;
  display:flex!important;
  min-width:0!important;
  box-sizing:border-box!important;
  align-items:center!important;
  gap:7px;
  margin:0!important;
  padding:3px 9px!important;
  overflow:hidden;
  border:0!important;
  border-left:4px solid var(--project-color,#35685b)!important;
  border-radius:5px;
  background:#eef6f2;
  color:#20372f;
  text-align:left;
  box-shadow:0 1px 2px rgba(0,0,0,.03);
}
.h3m12-span.is-absence{background:#fbf1e8;color:#5d3b22;border-left-color:#a86f3d!important}
.h3m12-span.is-event{background:#eaf3ff;color:#29445e;border-left-color:#579dff!important}
.h3m12-span>span{flex:0 0 auto;font-size:8px;font-weight:800;letter-spacing:.04em}
.h3m12-span>b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
.h3m12-span>small{margin-left:auto;flex:0 0 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit;opacity:.68;font-size:8px}
@media(max-width:900px){
  #content.s3-calendar-page>.s3-calendar{overflow-x:auto!important}
  #content.s3-calendar-page .s3-calendar-filters,
  #content.s3-calendar-page .s3-calendar-toolbar,
  .h3m12-month{width:760px!important;min-width:760px!important}
  .h3m12-weekdays,.h3m12-days{grid-template-columns:repeat(7,minmax(108px,1fr))!important}
}
