
/* Agenda — opções de suspensão conforme prévia aprovada */
.agenda-suspend-overlay{
  position:fixed;
  inset:0;
  z-index:1400;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(55,45,35,.38);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.agenda-suspend-overlay.hidden{display:none!important}
.agenda-suspend-sheet{
  width:min(100%,390px);
  position:relative;
  padding:24px 22px 22px;
  border-radius:28px;
  border:1px solid rgba(70,88,68,.10);
  background:rgba(255,252,246,.97);
  box-shadow:0 22px 70px rgba(44,37,29,.18);
  color:#2e4437;
}
.agenda-suspend-close{
  position:absolute;
  right:16px;
  top:12px;
  width:36px;
  height:36px;
  border:0;
  background:transparent;
  color:#2e4437;
  font:400 1.8rem/1 Georgia,serif;
}
.agenda-suspend-sheet h2{
  margin:0 44px 22px 0;
  color:#263d31;
  font:500 1.48rem/1.2 Georgia,"Times New Roman",serif;
}
.agenda-suspend-options{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:9px;
  margin-bottom:22px;
}
.agenda-suspend-option{
  aspect-ratio:1/1;
  min-width:0;
  border:1px solid rgba(73,91,71,.12)!important;
  border-radius:16px!important;
  background:#fffdfa!important;
  display:grid!important;
  place-items:center!important;
  color:#2d4437!important;
  box-shadow:none!important;
}
.agenda-suspend-option span{
  font-size:2rem;
  line-height:1;
}
.agenda-suspend-option.active{
  background:#e6efe2!important;
  border-color:#cfe0cb!important;
  box-shadow:inset 0 0 0 1px rgba(71,105,76,.10)!important;
}
.agenda-suspend-sheet-task .agenda-suspend-option span{
  font-size:1.65rem;
  font-family:Georgia,"Times New Roman",serif;
}
.agenda-suspend-confirm{
  width:min(100%,260px)!important;
  min-height:58px!important;
  margin:0 auto!important;
  border:0!important;
  border-radius:999px!important;
  background:#39684a!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  font-size:2rem!important;
  line-height:1!important;
  box-shadow:0 10px 25px rgba(57,104,74,.16)!important;
}
.agenda-suspend-sheet-vacation{
  width:min(100%,410px);
  padding-top:22px;
}
.agenda-vacation-title{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:14px;
}
.agenda-vacation-title>span{font-size:1.45rem}
.agenda-vacation-title h2{margin:0!important}
.agenda-vacation-nav{
  display:grid;
  grid-template-columns:44px 1fr 44px;
  align-items:center;
  gap:8px;
  margin:8px 0 14px;
}
.agenda-vacation-nav button{
  border:0!important;
  background:transparent!important;
  color:#30493a!important;
  font:500 1.8rem/1 Georgia,serif!important;
}
.agenda-vacation-nav b{
  text-align:center;
  text-transform:capitalize;
  font:500 1rem Georgia,serif;
}
.agenda-vacation-weekdays,
.agenda-vacation-grid{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:4px;
}
.agenda-vacation-weekdays{
  margin-bottom:6px;
  color:#69766b;
  font-size:.68rem;
  font-weight:800;
  text-align:center;
}
.agenda-vacation-grid{
  margin-bottom:20px;
}
.agenda-vacation-grid>span.empty{
  min-height:38px;
}
.agenda-vacation-grid button{
  min-height:38px!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#34483a!important;
  font-size:.82rem!important;
}
.agenda-vacation-grid button.selected{
  background:#50745a!important;
  color:#fff!important;
  border-radius:0!important;
}
.agenda-vacation-grid button.edge{
  border-radius:999px!important;
}
@media(max-width:420px){
  .agenda-suspend-overlay{padding:14px}
  .agenda-suspend-sheet{padding:22px 18px 18px}
  .agenda-suspend-options{gap:7px}
}


/* Estado visual: dia com Agenda suspensa */
.agenda-vnext-suspended-banner,
.agenda-day-suspended-banner{
  display:flex;
  align-items:center;
  gap:10px;
  margin:8px 0 12px;
  padding:10px 12px;
  border:1px solid rgba(177,112,76,.18);
  border-radius:14px;
  background:rgba(247,234,223,.92);
  color:#80533f;
}
.agenda-vnext-suspended-banner>span{
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#c98561;
  color:#fff;
  font-weight:800;
}
.agenda-vnext-suspended-banner b,
.agenda-day-suspended-banner b{
  display:block;
  font-size:.86rem;
}
.agenda-vnext-suspended-banner small,
.agenda-day-suspended-banner span{
  display:block;
  margin-top:2px;
  font-size:.69rem;
  color:#8b6654;
}
.agenda-vnext-period.is-day-suspended{
  box-shadow:inset 0 0 0 1px rgba(177,112,76,.16)!important;
}
.agenda-vnext-icon-action.suspend-day.active{
  background:#c98561!important;
  color:#fff!important;
}
.agenda-vnext-week-strip button{
  position:relative;
}
.agenda-vnext-week-strip button.is-suspended{
  border-color:rgba(177,112,76,.28)!important;
  background:rgba(249,239,231,.95)!important;
  color:#7f5846!important;
}
.agenda-vnext-week-strip button.is-suspended.active{
  background:#9f7058!important;
  color:#fff!important;
}
.agenda-vnext-week-suspended-mark{
  position:absolute;
  right:5px;
  top:4px;
  width:16px;
  height:16px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#c98561;
  color:#fff;
  font-size:.49rem;
  font-style:normal;
  font-weight:900;
}
.agenda-calendar-day{
  position:relative;
}
.agenda-calendar-day.is-suspended{
  background:rgba(249,239,231,.82)!important;
  border-color:rgba(177,112,76,.25)!important;
}
.agenda-calendar-suspended-mark{
  position:absolute;
  right:4px;
  top:4px;
  width:16px;
  height:16px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#c98561;
  color:#fff;
  font-size:.5rem;
  font-weight:900;
}
.agenda-day-suspended-banner{
  flex-direction:column;
  align-items:flex-start;
}
