/* =========================
   SRT Agenda — UI revamp
   ========================= */

.srt-agenda-wrap{
  --srt-bg: #ffffff;
  --srt-text: #0f172a;
  --srt-muted: rgba(15, 23, 42, .65);
  --srt-border: rgba(15, 23, 42, .12);
  --srt-soft: rgba(15, 23, 42, .06);
  --srt-shadow: 0 10px 30px rgba(2, 8, 23, .08);
  --srt-radius: 16px;

  color: var(--srt-text);
  max-width: 100%;
  overflow: hidden;
}

.srt-agenda-wrap{
  background: var(--srt-bg);
  border: 1px solid var(--srt-border);
  border-radius: var(--srt-radius);
  box-shadow: var(--srt-shadow);
  padding: 14px;
}

.srt-agenda-header{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:flex-start;
  margin-bottom: 12px;
}

/* -------------------------
   Filters (chips)
------------------------- */
.srt-agenda-filters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}

.srt-agenda-filters-title{
  font-weight: 800;
  letter-spacing: .2px;
  color: var(--srt-muted);
  margin-right: 6px;
}

.srt-filter-btn{
  appearance:none;
  border: 1px solid var(--srt-border);
  background: #fff;
  padding: 10px 12px;
  border-radius: 999px;
  cursor:pointer;
  font-weight: 800;
  font-size: 14px;
  line-height: 1;
  display:inline-flex;
  align-items:center;
  gap:8px;
  box-shadow: 0 1px 0 rgba(2, 8, 23, .04);
  color: var(--srt-text) !important;
}

.srt-chip-label{ color: inherit !important; }

.srt-filter-btn .srt-chip-dot{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--srtModColor, rgba(15,23,42,.35));
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.9);
}

.srt-filter-btn.mod{
  border-color: color-mix(in srgb, var(--srtModColor, #64748b) 45%, var(--srt-border));
}

.srt-filter-btn.is-active{
  background: rgba(15,23,42,.9);
  color:#fff !important;
  border-color: transparent;
  box-shadow: 0 8px 18px rgba(2, 8, 23, .14);
}

.srt-filter-btn.is-active.mod{
  background: var(--srtModColor);
}

@media (max-width: 768px){
  .srt-agenda-wrap{ padding: 12px; }

  .srt-agenda-header{
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  .srt-agenda-filters{
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 6px;
    scrollbar-width: none;
    max-width: 100%;
  }
  .srt-agenda-filters::-webkit-scrollbar{ display:none; }

  .srt-agenda-filters-title{
    width: 100%;
    margin-right: 0;
  }

  .srt-filter-btn{
    white-space: nowrap;
    flex: 0 0 auto;
  }
}

/* -------------------------
   FullCalendar styling
------------------------- */
.srt-agenda-wrap .fc{
  font-family: inherit;
  max-width: 100%;
  overflow-x: hidden;
}

.srt-agenda-wrap .fc a{ text-decoration: none !important; }

.srt-agenda-wrap .fc .fc-header-toolbar{
  margin: 6px 0 12px;
  gap: 10px;
}

.srt-agenda-wrap .fc .fc-toolbar-title{
  font-weight: 900;
  letter-spacing: .2px;
  font-size: clamp(16px, 2.2vw, 22px);
}

.srt-agenda-wrap .fc .fc-button{
  border: 1px solid var(--srt-border) !important;
  background: #fff !important;
  color: var(--srt-text) !important;
  border-radius: 12px !important;
  padding: 10px 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-transform: none !important;
  box-shadow: 0 1px 0 rgba(2, 8, 23, .04) !important;
}

.srt-agenda-wrap .fc .fc-today-button{
  background: rgba(15,23,42,.86) !important;
  color: #fff !important;
  border-color: transparent !important;
}

.srt-agenda-wrap .fc .fc-toolbar-chunk:last-child .fc-button-group{
  background: var(--srt-soft);
  border: 1px solid var(--srt-border);
  border-radius: 14px;
  padding: 4px;
  gap: 4px;
}

.srt-agenda-wrap .fc .fc-toolbar-chunk:last-child .fc-button-group .fc-button{
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 12px !important;
  padding: 9px 12px !important;
}

.srt-agenda-wrap .fc .fc-button-primary.fc-button-active,
.srt-agenda-wrap .fc .fc-button-primary:not(:disabled):active{
  background: #fff !important;
  border: 0 !important;
  box-shadow: 0 8px 18px rgba(2, 8, 23, .10) !important;
}

/* Mobile toolbar (3 linhas) */
@media (max-width: 768px){
  .srt-agenda-wrap .fc .fc-header-toolbar{
    display: flex;
    flex-wrap: wrap;
    row-gap: 10px;
    column-gap: 10px;
    margin: 6px 0 10px;
  }

  .srt-agenda-wrap .fc .fc-toolbar-chunk:nth-child(1){
    order: 1;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    gap: 10px;
  }

  .srt-agenda-wrap .fc .fc-toolbar-chunk:nth-child(2){
    order: 2;
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .srt-agenda-wrap .fc .fc-toolbar-title{
    text-align: center;
    white-space: normal;
    line-height: 1.05;
    font-size: 18px;
    max-width: 100%;
  }

  .srt-agenda-wrap .fc .fc-toolbar-chunk:nth-child(3){
    order: 3;
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .srt-agenda-wrap .fc .fc-toolbar-chunk:last-child .fc-button-group{
    width: 100%;
    justify-content: center;
    flex-wrap: nowrap;
  }

  .srt-agenda-wrap .fc .fc-toolbar-chunk:last-child .fc-button-group .fc-button{
    flex: 1 1 0;
    justify-content: center;
    padding: 10px 10px !important;
  }
}

.srt-agenda-wrap .fc .fc-scrollgrid{
  border: 1px solid var(--srt-border);
  border-radius: 14px;
  overflow: hidden;
}

.srt-agenda-wrap .fc .fc-day-today{
  background: rgba(59, 130, 246, .06) !important;
}

.srt-agenda-wrap .fc .fc-daygrid-day-frame{
  padding: 8px;
}

/* -------------------------
   Base event skin
------------------------- */
.srt-agenda-wrap .srt-fc-event{
  border: 1px solid rgba(15,23,42,.10) !important;
  border-left: 6px solid var(--srtEventColor, #64748b) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 20px rgba(2, 8, 23, .06) !important;
  background: rgba(15,23,42,.05) !important;
}

@supports (background: color-mix(in srgb, red 10%, white)){
  .srt-agenda-wrap .srt-fc-event{
    background: color-mix(in srgb, var(--srtEventColor, #64748b) 22%, white) !important;
  }
}

/* força texto do evento */
.srt-agenda-wrap .srt-fc-event,
.srt-agenda-wrap .srt-fc-event .fc-event-main{
  color: var(--srt-text) !important;
}

/* -------------------------
   DAY card
------------------------- */
.srt-event{
  padding: 10px 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.srt-event-top{ display:flex; align-items:center; gap: 8px; }

.srt-event-time{
  font-weight: 950;
  font-size: 12px;
  letter-spacing: .2px;
  padding: 5px 10px;
  border-radius: 999px;
  line-height: 1;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(15,23,42,.12);
  color: var(--srt-text) !important;
}

.srt-event-title{
  font-weight: 950;
  font-size: 14px;
  line-height: 1.15;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.srt-event-meta{
  font-weight: 850;
  font-size: 12px;
  line-height: 1.2;
  color: rgba(15,23,42,.75);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* -------------------------
   WEEK card
------------------------- */
.srt-week-event{
  padding: 10px 12px;
  display:flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.srt-week-time{
  align-self: flex-start;
  font-weight: 950;
  font-size: 12px;
  padding: 5px 10px;
  border-radius: 999px;
  line-height: 1;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(15,23,42,.12);
  color: var(--srt-text) !important;
}

.srt-week-main{
  font-weight: 950;
  font-size: 14px;
  line-height: 1.15;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.srt-week-sub{
  font-weight: 850;
  font-size: 12px;
  color: rgba(15,23,42,.72);
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* -------------------------
   LIST view
------------------------- */
.srt-agenda-wrap .fc .fc-list-event-time,
.srt-agenda-wrap .fc .fc-list-event-graphic{
  display: none !important;
}

.srt-agenda-wrap .fc .fc-list-event td{
  padding: 0 !important;
  border-color: rgba(15,23,42,.08) !important;
}

.srt-list-event{
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 12px 14px;
  border: 1px solid rgba(15,23,42,.10);
  border-left: 6px solid var(--srtEventColor, #64748b);
  border-radius: 14px;
  box-shadow: 0 10px 20px rgba(2, 8, 23, .06);
  background: rgba(15,23,42,.05);
}

@supports (background: color-mix(in srgb, red 10%, white)){
  .srt-list-event{
    background: color-mix(in srgb, var(--srtEventColor, #64748b) 18%, white) !important;
  }
}

.srt-list-time{
  font-weight: 950;
  font-size: 13px;
  padding: 6px 10px;
  border-radius: 999px;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(15,23,42,.12);
  color: var(--srt-text) !important;
}

.srt-list-body{
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.srt-list-title{
  font-weight: 950;
  font-size: 14px;
  line-height: 1.15;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.srt-list-meta{
  font-weight: 850;
  font-size: 12px;
  color: rgba(15,23,42,.75);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.srt-agenda-wrap .fc .fc-list-day-cushion{
  background: rgba(15,23,42,.04);
  font-weight: 950;
}

/* Error */
.srt-agenda-error{
  padding:14px;
  border:1px solid rgba(255,0,0,.25);
  background: rgba(255,0,0,.06);
  border-radius:12px;
  font-weight:900;
}
