/* Seasoned Firewood Delivery Scheduler calendar states */
#ui-datepicker-div {
    overflow: hidden;
}

/* Available delivery days: clear green cue. */
#ui-datepicker-div td.sfd-delivery-available:not(.ui-state-disabled) > a.ui-state-default {
    background: #e7f5e8 !important;
    border-color: #8fc695 !important;
    color: #1f5d2b !important;
    font-weight: 700;
}

#ui-datepicker-div td.sfd-delivery-available:not(.ui-state-disabled) > a.ui-state-default:hover,
#ui-datepicker-div td.sfd-delivery-available:not(.ui-state-disabled) > a.ui-state-default:focus {
    background: #cfe9d2 !important;
    border-color: #5f9f67 !important;
    color: #174820 !important;
}

/* Regular unavailable weekdays and dates outside PPOM's selectable window. */
#ui-datepicker-div td.sfd-delivery-unavailable > span.ui-state-default,
#ui-datepicker-div td.sfd-delivery-unavailable.ui-state-disabled > span.ui-state-default,
#ui-datepicker-div td.ui-state-disabled.sfd-delivery-available > span.ui-state-default {
    background: #f1f2f1 !important;
    border-color: #dedfdd !important;
    color: #9a9d98 !important;
    opacity: 1;
}

/* Administrator blackout dates get their own muted red treatment. */
#ui-datepicker-div td.sfd-delivery-blackout > span.ui-state-default,
#ui-datepicker-div td.sfd-delivery-blackout.ui-state-disabled > span.ui-state-default {
    background: #f9e7e4 !important;
    border-color: #dfaaa2 !important;
    color: #9a463b !important;
    opacity: 1;
}

/* Selected delivery date: Seasoned Firewood orange. */
#ui-datepicker-div td.ui-datepicker-current-day > a.ui-state-default,
#ui-datepicker-div td.ui-datepicker-current-day.sfd-delivery-available > a.ui-state-default {
    background: #d97706 !important;
    border-color: #b85f00 !important;
    color: #ffffff !important;
    font-weight: 800;
}

/* Today: visible, but do not imply it is selectable. */
#ui-datepicker-div td.ui-datepicker-today > a.ui-state-default,
#ui-datepicker-div td.ui-datepicker-today > span.ui-state-default {
    box-shadow: inset 0 0 0 2px rgba(47, 93, 63, 0.58);
}

#ui-datepicker-div .sfd-datepicker-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    align-items: center;
    padding: 10px 12px;
    margin-top: 6px;
    border-top: 1px solid #e3e5e1;
    background: #faf9f5;
    color: #495148;
    font-size: 12px;
    line-height: 1.25;
}

#ui-datepicker-div .sfd-legend-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

#ui-datepicker-div .sfd-legend-swatch {
    width: 14px;
    height: 14px;
    border: 1px solid transparent;
    border-radius: 3px;
    flex: 0 0 auto;
}

#ui-datepicker-div .sfd-legend-available {
    background: #e7f5e8;
    border-color: #8fc695;
}

#ui-datepicker-div .sfd-legend-unavailable {
    background: #f1f2f1;
    border-color: #dedfdd;
}

#ui-datepicker-div .sfd-legend-blackout {
    background: #f9e7e4;
    border-color: #dfaaa2;
}

@media (max-width: 480px) {
    #ui-datepicker-div .sfd-datepicker-legend {
        gap: 7px 10px;
        font-size: 11px;
    }
}

/* Fully booked dates: visually distinct from operational blackouts. */
#ui-datepicker-div td.sfd-delivery-fully-booked > span.ui-state-default,
#ui-datepicker-div td.sfd-delivery-fully-booked.ui-state-disabled > span.ui-state-default {
    background: #fff1d8 !important;
    border-color: #e0a13c !important;
    color: #8a4b00 !important;
    opacity: 1;
    font-weight: 800;
}

#ui-datepicker-div .sfd-legend-fully-booked {
    background: #fff1d8;
    border-color: #e0a13c;
}
