/* Overrides de cores para seleção de datas no calendário */
:root {
    --cal-start-bg: #2E7D32;
    /* verde floresta para check-in */
    --cal-end-bg: #D32F2F;
    /* vermelho forte para check-out */
    --cal-range-bg: #E8F5E9;
    /* verde muito claro para intervalo */
    --cal-hover-outline: #1976D2;
    --cal-start-text: #FFFFFF;
    --cal-end-text: #FFFFFF;
    --cal-range-text: #2E7D32;
}

/* Estados selecionados: início (check-in) */
td.pms-avai.selected-start,
td.pms-minnight.selected-start {
    background: var(--cal-start-bg) !important;
    color: var(--cal-start-text) !important;
    border: solid 2px var(--cal-start-bg) !important;
}

/* Estados selecionados: fim (check-out) */
td.pms-avai.selected-end,
td.pms-minnight.selected-end {
    background: var(--cal-end-bg) !important;
    color: var(--cal-end-text) !important;
    border: solid 2px var(--cal-end-bg) !important;
}

/* Estados selecionados: intervalo */
td.pms-avai.selected-range,
td.pms-minnight.selected-range {
    background: var(--cal-range-bg) !important;
    color: var(--cal-range-text) !important;
    border: solid 1px #C8E6C9 !important;
}

/* Ajustar cor do número do dia e preço para check-in */
td.pms-avai.selected-start .pms-numday,
td.pms-minnight.selected-start .pms-numday,
td.pms-avai.selected-start .pms-dailyrate,
td.pms-minnight.selected-start .pms-dailyrate {
    color: var(--cal-start-text) !important;
    opacity: 1 !important;
}

/* Ajustar cor do número do dia e preço para check-out */
td.pms-avai.selected-end .pms-numday,
td.pms-minnight.selected-end .pms-numday,
td.pms-avai.selected-end .pms-dailyrate,
td.pms-minnight.selected-end .pms-dailyrate {
    color: var(--cal-end-text) !important;
    opacity: 1 !important;
}

/* Ajustar cor do número do dia e preço para intervalo */
td.pms-avai.selected-range .pms-numday,
td.pms-minnight.selected-range .pms-numday,
td.pms-avai.selected-range .pms-dailyrate,
td.pms-minnight.selected-range .pms-dailyrate {
    color: var(--cal-range-text) !important;
    opacity: 0.8 !important;
}

/* Hover amigável nas células clicáveis */
td.pms-avai:not(.selected-start):not(.selected-end):not(.selected-range):hover,
td.pms-minnight:not(.selected-start):not(.selected-end):not(.selected-range):hover {
    outline: 2px solid var(--cal-hover-outline);
    outline-offset: -2px;
    cursor: pointer;
}

/* Inputs de check-in/out com foco em verde */
#pms-frmdateselect input.pms-cal:focus {
    border-color: var(--cal-hover-outline) !important;
    box-shadow: 0 0 0 2px rgba(0, 200, 83, 0.2);
}