/* Calendar Card Wrapper (যদি ক্যালেন্ডারটি একটি কার্ডের মধ্যে থাকে) */
.calendar-card {
    border: none; /* remove card border */
    box-shadow: none; /* remove card shadow */
    border-radius: 0; /* remove card border radius */
}

/* New top header for "Calendar" text (Green header) */
.calendar-card .card-header.top-calendar-header {
    background-color: #6a9c3e !important; /* Green color from image */
    color: #fff;
    padding: 10px 15px;
    font-size: 1.2em;
    font-weight: bold;
    text-align: center;
    border-radius: 0;
}

/* Main Calendar Container (Inner container that holds month/year, weekdays, dates) */
.calendar-container {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    border: 1px solid #e0e0e0; /* Border for the main calendar body */
    border-top: none; /* Remove top border as header will handle it */
    border-radius: 0 0 8px 8px; /* Rounded corners only at bottom */
    overflow: hidden;
    background-color: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08); /* Re-added for the calendar body */
    max-width: 400px; /* Max width for the calendar itself */
    margin: 0 auto; /* Center the calendar */
}

/* Calendar Header (Month/Year and Navigation Buttons) - Now red */
.calendar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 15px;
    background-color: #e62e6e; /* Red color from image */
    border-bottom: 1px solid #e0e0e0;
    color: #fff; /* Text color for month/year display */
}

.month-year-display {
    font-size: 1.2em;
    font-weight: bold;
    color: #fff; /* Ensure text is white */
}

.calendar-header button {
    cursor: pointer;
    border: 1px solid #c0c0c0; /* Lighter border for buttons */
    background-color: #f0f0f0; /* Light background for buttons */
    padding: 5px 10px;
    border-radius: 5px;
    transition: background-color 0.2s ease;
    color: #333; /* Button arrow color */
}

.calendar-header button:hover {
    background-color: #e0e0e0;
}

/* Weekdays Row - Dark background as in image */
.calendar-weekdays {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    background-color: #34495e; /* Dark background from image */
    color: #fff; /* White text for weekdays */
    font-weight: bold;
    font-size: 0.9em;
    text-align: center;
    padding: 8px 0;
    border-bottom: 1px solid #2c3e50; /* Darker border */
}

/* Dates Grid */
.calendar-dates {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 1px; /* Small gap between date cells */
    padding: 10px;
    background-color: #eee; /* Background for the grid itself */
}

/* Individual Date Cells */
.calendar-dates div {
    background-color: #fff;
    padding: 10px 5px;
    text-align: center;
    border-radius: 4px; /* Slight roundness for cells */
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.1s ease;
    min-height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.95em;
    color: #444;
}

.calendar-dates div:hover:not(.current-day):not(.inactive-day) {
    background-color: #e6f7ff;
    transform: translateY(-1px);
}

/* Inactive (previous/next month) days */
.calendar-dates .inactive-day {
    color: #aaa; /* Lighter color for inactive days */
    background-color: #f5f5f5; /* Lighter background for inactive days */
    cursor: default;
}

.calendar-dates .inactive-day:hover {
    background-color: #f5f5f5;
    transform: none;
}


/* Current Day Highlight - Now red as in image */
.calendar-dates .current-day {
    background-color: #e62e6e; /* Red color from image */
    color: #fff;
    font-weight: bold;
    border-radius: 4px; /* Square shape as in image */
    width: auto; /* Allow width to adjust */
    height: auto; /* Allow height to adjust */
    padding: 10px 5px; /* Adjust padding to make it look like a highlighted cell */
    margin: 0; /* Remove auto margin to avoid issues with square */
    box-shadow: none; /* Remove subtle glow */
}

/* Responsive adjustments for smaller screens */
@media (max-width: 480px) {
    .calendar-container {
        max-width: 100%;
        border-radius: 0;
    }
    .calendar-dates div {
        padding: 8px 3px;
        font-size: 0.9em;
        min-height: 35px;
    }
    .current-day {
        /* Adjust for smaller screens if needed, but current setup is flexible */
    }
    .calendar-header {
        font-size: 1.1em;
    }
    .calendar-card .card-header.top-calendar-header {
        font-size: 1.1em;
        padding: 8px 10px;
    }
}