/* HARDENING (CSP-A): styles propios externalizados */

body { font-family: 'Inter', sans-serif; }

/* FullCalendar Dark Mode Overrides */
.fc-theme-standard td, .fc-theme-standard th { border-color: #e5e7eb; }
.dark .fc-theme-standard td, .dark .fc-theme-standard th { border-color: #374151; }

.fc .fc-timegrid-slot-label-cushion, .fc .fc-col-header-cell-cushion, .fc .fc-daygrid-day-number { color: #374151; }
.dark .fc .fc-timegrid-slot-label-cushion, .dark .fc .fc-col-header-cell-cushion, .dark .fc .fc-daygrid-day-number { color: #d1d5db; }

.dark .fc-timegrid-now-indicator-line { border-color: #ef4444; }
.dark .fc-timegrid-now-indicator-arrow { border-color: #ef4444; }

.fc-event { border: none; }
.dark .fc-timegrid-col-events { margin: 0; }

/* HARDENING (Sprint Visual D1): FullCalendar buttons usan brand-primary
   del tenant logueado. La var --brand-primary-rgb la setea BrandingContext
   en runtime. Defaults a Iris violet (88 71 224) en src/index.css. */
.fc-button-primary { background-color: rgb(var(--brand-primary-rgb)) !important; border-color: rgb(var(--brand-primary-rgb)) !important; }
.fc-button-primary:hover { background-color: rgb(var(--brand-primary-rgb) / 0.9) !important; border-color: rgb(var(--brand-primary-rgb) / 0.9) !important; }
.fc-button-active { background-color: rgb(var(--brand-primary-rgb) / 0.8) !important; border-color: rgb(var(--brand-primary-rgb) / 0.8) !important; }

/* Scrollbars */
.fc-scroller::-webkit-scrollbar { width: 8px; height: 8px; }
.fc-scroller::-webkit-scrollbar-track { background: transparent; }
.fc-scroller::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
.dark .fc-scroller::-webkit-scrollbar-thumb { background: #4b5563; }
