/* =====================================================================
   FullCalendar — tema Sóbrio Slate (estilo Notion)
   Substitui o conteúdo de: resources/css/fullcalendar-custom.css
   ===================================================================== */

/* ── Variáveis do tema ──────────────────────────────────────────────── */
.filament-fullcalendar {
    --fc-border-color:            #e5e7eb;
    --fc-today-bg-color:          #f8f8f7;
    --fc-now-indicator-color:     #6b7280;
    --fc-page-bg-color:           #ffffff;
    --fc-neutral-bg-color:        #f3f4f6;
    --fc-list-event-hover-bg-color: #f8f8f7;
}

html.dark .filament-fullcalendar {
    --fc-border-color:            rgba(55, 65, 81, 0.6);
    --fc-today-bg-color:          rgba(55, 65, 81, 0.25);
    --fc-page-bg-color:           #191919;
    --fc-neutral-bg-color:        #252525;
    --fc-list-event-hover-bg-color: #252525;
}

/* ── Toolbar ────────────────────────────────────────────────────────── */
.filament-fullcalendar .fc-toolbar-title {
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #37352f;
    letter-spacing: -0.01em;
}

html.dark .filament-fullcalendar .fc-toolbar-title {
    color: #e5e7eb;
}

/* Botões — estilo ghost/outline neutro */
.filament-fullcalendar.fc .fc-button {
    background-color: #ffffff !important;
    border: 1px solid #d1d5db !important;
    color: #374151 !important;
    font-size: 0.78rem !important;
    font-weight: 500 !important;
    border-radius: 0.375rem !important;
    padding: 0.3rem 0.65rem !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05) !important;
    transition: background-color .15s, border-color .15s !important;
}

.filament-fullcalendar.fc .fc-button:hover {
    background-color: #f3f4f6 !important;
    border-color: #9ca3af !important;
    color: #111827 !important;
    box-shadow: none !important;
}

.filament-fullcalendar.fc .fc-button:disabled,
.filament-fullcalendar.fc .fc-button.fc-button-active {
    background-color: #f3f4f6 !important;
    border-color: #9ca3af !important;
    color: #111827 !important;
    box-shadow: none !important;
}

html.dark .filament-fullcalendar.fc .fc-button {
    background-color: #2d2d2d !important;
    border-color: #4b5563 !important;
    color: #d1d5db !important;
}

html.dark .filament-fullcalendar.fc .fc-button:hover,
html.dark .filament-fullcalendar.fc .fc-button.fc-button-active {
    background-color: #374151 !important;
    border-color: #6b7280 !important;
    color: #f9fafb !important;
}

/* ── Cabeçalho dos dias ─────────────────────────────────────────────── */
.filament-fullcalendar .fc-col-header-cell {
    background-color: #f9fafb;
    border-color: #e5e7eb !important;
    padding: 0.4rem 0;
}

html.dark .filament-fullcalendar .fc-col-header-cell {
    background-color: #1f1f1f;
    border-color: rgba(55, 65, 81, 0.6) !important;
}

.filament-fullcalendar .fc-col-header-cell-cushion {
    font-size: 0.7rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: #9ca3af;
    text-decoration: none !important;
}

html.dark .filament-fullcalendar .fc-col-header-cell-cushion {
    color: #6b7280;
}

/* ── Células dos dias ───────────────────────────────────────────────── */
.filament-fullcalendar .fc-daygrid-day {
    border-color: #e5e7eb !important;
}

html.dark .filament-fullcalendar .fc-daygrid-day {
    border-color: rgba(55, 65, 81, 0.5) !important;
}

.filament-fullcalendar .fc-day-other .fc-daygrid-day-top {
    opacity: 0.3;
}

/* Número do dia */
.filament-fullcalendar .fc-daygrid-day-number {
    font-size: 0.78rem;
    font-weight: 400;
    color: #6b7280;
    text-decoration: none !important;
    padding: 0.35rem 0.5rem;
}

html.dark .filament-fullcalendar .fc-daygrid-day-number {
    color: #4b5563;
}

/* Hoje — círculo cinza escuro discreto */
.filament-fullcalendar .fc-day-today .fc-daygrid-day-number {
    background-color: #37352f;
    color: #ffffff;
    border-radius: 999px;
    width:  1.55rem;
    height: 1.55rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0.2rem;
    font-weight: 600;
}

html.dark .filament-fullcalendar .fc-day-today .fc-daygrid-day-number {
    background-color: #e5e7eb;
    color: #111827;
}

/* ── Eventos ────────────────────────────────────────────────────────── */
.filament-fullcalendar .fc-event {
    border-radius: 0.25rem !important;
    border: none !important;
    font-size: 0.72rem !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    filter: saturate(0.75) brightness(0.97);
    box-shadow: none !important;
    transition: filter .15s, transform .1s !important;
}

.filament-fullcalendar .fc-event:hover {
    filter: saturate(0.9) brightness(0.92) !important;
    transform: translateY(-1px) !important;
}

.filament-fullcalendar .fc-event-title {
    text-decoration: none !important;
    letter-spacing: -0.01em;
}

/* ── Vista lista ────────────────────────────────────────────────────── */
.filament-fullcalendar .fc-list-day-cushion {
    background-color: #f9fafb !important;
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #9ca3af;
}

html.dark .filament-fullcalendar .fc-list-day-cushion {
    background-color: #1f1f1f !important;
    color: #4b5563;
}

.filament-fullcalendar .fc-list-event-title a {
    font-size: 0.82rem;
    color: #374151;
    text-decoration: none;
}

html.dark .filament-fullcalendar .fc-list-event-title a {
    color: #d1d5db;
}

/* ── Vista semana ───────────────────────────────────────────────────── */
.filament-fullcalendar .fc-timegrid-slot {
    height: 2.5rem !important;
    border-color: #f3f4f6 !important;
}

html.dark .filament-fullcalendar .fc-timegrid-slot {
    border-color: rgba(55, 65, 81, 0.3) !important;
}

.filament-fullcalendar .fc-timegrid-axis-cushion {
    font-size: 0.68rem;
    color: #9ca3af;
    font-weight: 400;
}

/* ── Seleção de intervalo ───────────────────────────────────────────── */
.filament-fullcalendar .fc-highlight {
    background-color: rgba(107, 114, 128, 0.1) !important;
}

/* ── Scrollbar ──────────────────────────────────────────────────────── */
.filament-fullcalendar .fc-scroller::-webkit-scrollbar { width: 3px; height: 3px; }
.filament-fullcalendar .fc-scroller::-webkit-scrollbar-track { background: transparent; }
.filament-fullcalendar .fc-scroller::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 999px;
}
html.dark .filament-fullcalendar .fc-scroller::-webkit-scrollbar-thumb {
    background: #374151;
}

.filament-fullcalendar .fc-event.lex-holiday .fc-event-title {
    white-space: normal !important;
    word-break: break-word !important;
    line-height: 1.3 !important;
}