/* ==========================================
   FullCalendar v6 - Complete Emerald Theme
   ========================================== */

/* 1. Global Container & Grid */
.fc {
    background-color: #1e1e1e !important;
    color: #a0a0a0;
    padding: 15px;
    border-radius: 8px;
    --fc-border-color: #333333; /* Dark grid lines */
    --fc-today-bg-color: #242424;
}

/* Header Toolbar & Title */
.fc-toolbar-title {
    color: #198754 !important; 
    font-weight: 300 !important;
}

/* 2. Buttons (Month, Week, Day, etc.) */
.fc .fc-button-primary {
    background-color: #198754 !important;
    border-color: #198754 !important;
    color: #fff !important;
    text-transform: capitalize;
    box-shadow: none !important;
    font-weight: 500;
}

.fc .fc-button-primary:hover {
    background-color: #157347 !important;
    border-color: #157347 !important;
}

.fc .fc-button-primary:not(:disabled).fc-button-active,
.fc .fc-button-primary:not(:disabled):active {
    background-color: #47ca8d !important;
    border-color: #47ca8d !important;
    color: #fff !important;
}

/* 3. Table Structure & Headers */
.fc .fc-scrollgrid, .fc td, .fc th {
    border: 1px solid #333333 !important;
}

.fc-col-header-cell {
    background: #2a2a2a !important;
    padding: 10px 0 !important;
}

.fc-col-header-cell-cushion {
    color: #198754 !important;
    text-transform: uppercase;
    font-size: 0.85em;
    text-decoration: none !important;
}

/* 4. Day Numbers & Interactivity */
.fc-daygrid-day-number {
    color: #2ecc71 !important; /* Vibrant Emerald Green */
    text-decoration: underline !important;
    padding: 8px !important;
    display: block;
    opacity: 1 !important;
    cursor: pointer !important;
    transition: color 0.2s ease;
}

.fc .fc-daygrid-day-number:hover {
    color: #47ca8d !important;
    text-decoration: none !important;
}

/* "Disabled" look for dates in past/future months (50% opacity) */
.fc-day-other .fc-daygrid-day-number {
    color: #2ecc71 !important;
    opacity: 0.5 !important;
    text-decoration: none !important;
}

/* 5. Fixed Height & "Today" Frame */
.fc-daygrid-day-frame {
    min-height: 100px !important; 
    height: 100px !important;
    overflow: hidden !important;
}

/* Today 1px Highlight */
.fc-day-today {
    background-color: #242424 !important;
    outline: 1px solid #198754 !important;
    outline-offset: -1px;
    border: none !important;
}

/* 6. Events (Month, Week, and Day Views) */
/* Targets both .fc-daygrid-event (Month) and .fc-timegrid-event (Week/Day) */
.fc-event, 
.fc-daygrid-event, 
.fc-timegrid-event {
    background-color: #2d5a42 !important; /* Muted Green Event Box */
    border: 1px solid #198754 !important;
    color: #ffffff !important;
    border-radius: 4px;
}

/* Specific spacing for month view events */
.fc-daygrid-event {
    margin: 2px 5px !important;
    padding: 2px 6px !important;
}

/* Specific spacing/padding for Day/Week view events */
.fc-timegrid-event {
    margin: 1px !important;
    padding: 2px !important;
}

/* Event Center Dots */
.fc-daygrid-event-dot {
    background-color: #0a0a0a !important; /* Very Dark Center */
    border: 1px solid #198754 !important;  /* Emerald Ring */
    width: 6px !important;
    height: 6px !important;
    border-radius: 50%;
}

.fc-event-time {
    font-weight: bold;
    color: #fff !important;
    margin-right: 5px;
}

.fc-event-title {
    font-weight: 400 !important;
}

/* 7. "+ More" Links & Popover */
.fc-daygrid-more-link {
    color: #2ecc71 !important;
    font-weight: bold;
    padding: 2px 8px !important;
    text-decoration: none !important;
    font-size: 0.85em;
}

.fc-popover {
    background-color: #1e1e1e !important;
    border: 1px solid #198754 !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.6);
}

.fc-popover-header {
    background: #2a2a2a !important;
    color: #198754 !important;
    padding: 8px !important;
}

.fc-popover-body {
    background-color: #1e1e1e !important;
    padding: 10px !important;
}

/* 8. TimeGrid (Day/Week View) Styles */
.fc-timegrid-slot {
    height: 2.5em !important; 
}

.fc-timegrid-slot-label-cushion {
    color: #a0a0a0 !important; /* Time labels (9am, 10am) */
}

.fc-timegrid-axis-cushion {
    color: #198754 !important;
}

.fc-timegrid-now-indicator-line {
    border-color: #ff0000 !important; /* Current time line */
}

/* 9. Utility & Cleanup */
.fc-daygrid-day:focus {
    outline: none !important;
}
