.datepicker
{
    border: 2px solid var(--gold);
    position: relative;
}

.datepicker.disabled
{
    opacity: 0.5;
}

.datepicker .header
{
    display: flex;
    justify-content: space-between;
    padding: 10px 5px;
    color: var(--dark);
}

.datepicker .month h6
{
    font-size: 17px;
    font-weight: bold;
}

.datepicker:not(.disabled) .previous-month:not(.disabled), .datepicker:not(.disabled) .next-month
{
    transition: color .3s ease-in-out;
    cursor: pointer;
}

.datepicker:not(.disabled) .previous-month:not(.disabled):hover, .datepicker:not(.disabled) .next-month:hover
{
    color: var(--gold);
}

.datepicker .previous-month.disabled
{
    opacity: 0.5;
}

.datepicker table
{
    width:100%;
    table-layout: fixed;
    border-spacing: 0;
    border-collapse: collapse;
    font-size: 20px;
}

.datepicker td, .datepicker th
{
    border: 1px solid rgba(0, 0, 0, 0.15);
    padding: 6px 0; 
}

.datepicker .day
{
    font-size: 17px;
    transition: color .3s ease-in-out, background-color .3s ease-in-out;
}

.datepicker:not(.disabled) .day:not(.disabled):not(.selected), .datepicker .hour:not(.selected)
{
    cursor: pointer;
}

.datepicker:not(.disabled) .day:not(.disabled):not(.selected):hover, .datepicker .hour:not(.selected):hover
{
    background-color: var(--lightgray);
    color: var(--dark);
}

.datepicker .day.selected, .datepicker .hour.selected
{
    background-color: var(--gold);
    color: var(--white);
}

.datepicker .day.disabled
{
    opacity: 0.3;
    font-weight: bold;
}

.datepicker .hours
{
    background-color: var(--lightgray);
    padding: 20px 25px;
}

.datepicker .hours-wrapper
{
    display: flex;
    flex-wrap: wrap;
}

.datepicker .hour
{
    width:25%;
    background-color: var(--white);
    border: 1px dashed rgba(0, 0, 0, 0.2);
    font-size: 16px;
    padding: 10px 0;
    transition: color .3s ease-in-out, background-color .3s ease-in-out;
}

.datepicker .loading-wrapper
{
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left:0;
    display: none;
}

.datepicker .loading
{
    width: 40px;
    height: 40px;
    margin: 100px auto 0; 
}

@media(max-width: 500px)
{    
    .datepicker table
    {
        font-size: 17px;
    }

    .datepicker .day
    {
        font-size: 16px;
    }

    .datepicker .hours
    {
        padding: 15px;
    }

    .datepicker .hour
    {
        font-size: 15px;
    }
}