/* raca-energy-project/client/static/css/calendar.css */

/* کانتینر اصلی ویجت */
.cal-widget {
    border: 1px solid var(--border-light);
    padding: 10px;
    background: var(--bg-panel);
    position: absolute; /* باید absolute باشد تا روی صفحه شناور شود */
    width: 300px; /* عرض ثابت برای جلوگیری از تغییر سایز */
    border-radius: var(--radius-lg);
    box-shadow: var(--elevation-3);
    direction: rtl;
    z-index: 10000;
}

/* جدول تقویم */
.cal-widget table.calendar_widget {
    font-family: var(--font-main) !important;
    font-size: 0.9rem;
    border-spacing: 0;
    line-height: 1.5;
    margin: 0;
    padding: 0;
    color: var(--text-primary);
    width: 100%;
    table-layout: fixed; /* تثبیت ستون‌ها برای جلوگیری از پرش */
}

/* --- ردیف هدر (دکمه‌ها و عنوان) --- */

/* دکمه‌های ناوبری (سال و ماه قبل/بعد) */
/* در JS شما این سلول‌ها کلاس dayButton دارند */
.cal-widget tr:first-child td.dayButton {
    width: 35px; /* عرض ثابت و کوچک برای دکمه‌ها */
    height: 35px;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    font-weight: bold;
    color: var(--text-secondary);
    border-radius: var(--radius-circle);
    transition: background 0.2s;
    user-select: none;
}

.cal-widget tr:first-child td.dayButton:hover {
    background-color: var(--brand-primary-light);
    color: var(--brand-primary);
}

/* عنوان وسط (ماه و سال) */
.cal-widget td.month_year_display {
    text-align: center;
    font-weight: 800;
    color: var(--brand-primary);
    font-size: 1.1rem;
    /* عرض خودکار می‌گیرد تا فضای بین دکمه‌ها را پر کند */
}

/* --- ردیف روزهای هفته (شنبه، یکشنبه...) --- */
.cal-widget td.weekday {
    text-align: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-tertiary);
    padding: 8px 0;
    border-bottom: 1px solid var(--border-light);
}

.cal-widget td.weekend {
    text-align: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--status-danger); /* قرمز برای جمعه */
    padding: 8px 0;
    border-bottom: 1px solid var(--border-light);
}

/* --- خانه‌های تقویم (اعداد روزها) --- */
.cal-widget td.number {
    text-align: center;
    padding: 2px;
    height: 40px; /* ارتفاع ثابت برای روزها */
}

/* دکمه‌های روز (div داخل td) */
.cal-widget .number .dayButton {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-md);
    cursor: pointer;
    transition: all 0.2s;
    font-size: 0.95rem;
    color: var(--text-primary);
}

.cal-widget .number .dayButton:hover {
    background-color: var(--bg-hover);
    color: var(--brand-primary);
}

/* --- وضعیت‌های خاص روزها --- */

/* امروز */
.cal-widget span.today {
    color: var(--brand-secondary);
    font-weight: 900;
    position: relative;
}
/* خط زیر امروز */
.cal-widget span.today::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 50%;
    transform: translateX(-50%);
    width: 4px;
    height: 4px;
    background-color: var(--brand-secondary);
    border-radius: 50%;
}

/* روز انتخاب شده */
.cal-widget span.current_selection {
    background-color: var(--brand-primary) !important;
    color: white !important;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    box-shadow: 0 4px 10px var(--brand-primary-light);
}

/* روزهای ماه دیگر (خاکستری) */
.cal-widget span.other_month {
    color: var(--text-disabled);
    font-size: 0.85rem;
}

/* روزهای تعطیل (جمعه) در جدول */
/* کد JS شما استایل رنگی مستقیم می‌دهد، اما می‌توانیم اینجا هم مدیریت کنیم */
.cal-widget .dayButton[style*="color:#d00"] span:not(.current_selection) {
    color: var(--status-danger);
}

/* حذف استایل لینک‌ها اگر وجود داشته باشند */
.cal-widget table.calendar_widget td a {
    text-decoration: none;
    color: inherit;
}