/* Календарь дат (static/js/hm-calendar.js): выбор дней для вакансий и просмотр */

.hm-cal {
    background: var(--hm-surface, #FFFFFF);
    border: 1px solid var(--hm-border, rgba(31, 58, 46, 0.14));
    border-radius: var(--hm-r-lg, 16px);
    padding: 14px;
    max-width: 340px;
    font-family: var(--hm-sans, system-ui, sans-serif);
    color: var(--hm-text, #1F3A2E);
}

.hm-cal__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}

.hm-cal__title {
    font-weight: 600;
    font-size: 15px;
}

.hm-cal__nav {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid var(--hm-border, rgba(31, 58, 46, 0.14));
    background: transparent;
    color: inherit;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}

.hm-cal__nav:hover {
    background: rgba(31, 58, 46, 0.06);
}

.hm-cal__grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
    text-align: center;
}

.hm-cal__wd {
    font-size: 12px;
    color: var(--hm-muted, #5B6B63);
    padding-bottom: 4px;
}

.hm-cal__empty {
    display: block;
}

.hm-cal__day {
    aspect-ratio: 1 / 1;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: inherit;
    font-size: 14px;
    cursor: pointer;
    transition: background .12s ease;
}

.hm-cal__day:hover:not(:disabled) {
    background: rgba(31, 58, 46, 0.08);
}

.hm-cal__day.is-today {
    box-shadow: inset 0 0 0 1px var(--hm-green, #1F3A2E);
}

.hm-cal__day.is-disabled,
.hm-cal__day:disabled {
    color: rgba(31, 58, 46, 0.3);
    cursor: default;
    text-decoration: line-through;
}

.hm-cal__day.is-selected {
    background: var(--hm-green, #1F3A2E);
    color: #F7F4EC;
    font-weight: 600;
}

.hm-cal__day.is-in-range {
    background: rgba(217, 179, 137, 0.35);
    border-radius: 0;
}

.hm-cal__day.is-edge {
    background: #D9B389;
    color: #1F3A2E;
    font-weight: 700;
}

.hm-cal__foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 12px;
    font-size: 13px;
    color: var(--hm-muted, #5B6B63);
}

.hm-cal__clear {
    border: 0;
    background: none;
    color: var(--hm-green, #1F3A2E);
    text-decoration: underline;
    cursor: pointer;
    font-size: 13px;
}
