/*
|--------------------------------------------------------------------------
| Cups Booking
| Public Calendar
|--------------------------------------------------------------------------
*/


.cb-public-calendar {

    max-width: var(--cb-calendar-width, 1000px);

}





/*
|--------------------------------------------------------------------------
| Card calendar
|--------------------------------------------------------------------------
*/


.cb-public-calendar .cb-room-card {

    background: var(--cb-card-background, transparent);

    border:1px solid var(--cb-card-border, #ddd);

    padding:20px;

    margin-bottom:25px;

    border-radius:var(--cb-card-radius, 6px);

}







/*
|--------------------------------------------------------------------------
| Toolbar
|--------------------------------------------------------------------------
*/


.cb-public-calendar .cb-calendar-toolbar {

    display:flex !important;

    flex-direction:row !important;

    justify-content:center;

    align-items:center;

    gap:20px;

    margin-bottom:20px;

}






.cb-public-calendar .cb-calendar-toolbar button {


    width:36px;

    height:36px;

    padding:0;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:4px;

    border:1px solid #fff;

    background:#8a643e;

    color:#fff;

    font-size:16px;

    cursor:pointer;


}






.cb-public-calendar .cb-calendar-toolbar button:hover {


    background:#222222;

    color:#ffffff;


}







.cb-public-calendar .cb-current-month {


    min-width:180px;

    text-align:center;

    font-size:var(--cb-month-size,18px);

    font-weight:600;

    color:var(--cb-month-color,#222);


}







/*
|--------------------------------------------------------------------------
| Weekdays
|--------------------------------------------------------------------------
*/


.cb-public-calendar .cb-weekdays {


    display:grid !important;

    grid-template-columns:repeat(7,1fr) !important;

    gap:var(--cb-calendar-gap,8px);


}




.cb-public-calendar .cb-weekdays div {


    text-align:center;

    font-weight:600;

    padding:8px;

    background:var(--cb-weekday-background,transparent);

    font-size:var(--cb-weekday-size,14px);

    color:var(--cb-weekday-color,#222);


}









/*
|--------------------------------------------------------------------------
| Calendar grid
|--------------------------------------------------------------------------
*/


.cb-public-calendar .cb-calendar-grid {


    display:grid !important;

    grid-template-columns:repeat(7,1fr) !important;

    gap:var(--cb-calendar-gap,8px);


}









/*
|--------------------------------------------------------------------------
| Days
|--------------------------------------------------------------------------
*/


.cb-public-calendar .cb-day {


    width:100%;

    height:var(--cb-day-height,55px);

    min-height:var(--cb-day-height,55px);

    display:flex;

    align-items:center;

    justify-content:center;

    box-sizing:border-box;

    border:1px solid var(--cb-card-border,#ddd);

    border-radius:var(--cb-day-radius,4px);

    font-size:var(--cb-day-size,15px);

    font-weight:500;

    color:var(--cb-day-color,var(--cb-text-color,#222));


}








.cb-public-calendar .cb-empty {


    background:transparent;

    border:none;


}









/*
|--------------------------------------------------------------------------
| Status zile
|--------------------------------------------------------------------------
*/


.cb-public-calendar .cb-available {


    background:
    var(--cb-available-background,#e7f7e7);


    color:
    var(--cb-available-text,#217a21) !important;


    border-color:
    var(--cb-available-border,#b7dfb7);


}







.cb-public-calendar .cb-reserved {


    background:
    var(--cb-reserved-background,#f7dddd);


    color:
    var(--cb-reserved-text,#a00000) !important;


    border-color:
    var(--cb-reserved-border,#e2aaaa);


    font-weight:bold;


}







.cb-public-calendar .cb-blocked,
.cb-public-calendar .cb-occupied {


    background:
    var(--cb-occupied-background,#e5e5e5);


    color:
    var(--cb-occupied-text,#333) !important;


    border-color:
    var(--cb-occupied-border,#cccccc);


    font-weight:bold;


}









/*
|--------------------------------------------------------------------------
| Legend
|--------------------------------------------------------------------------
*/


.cb-public-calendar .cb-calendar-legend {


    display:flex !important;

    flex-direction:row !important;

    justify-content:center;

    align-items:center;

    gap:20px;

    margin-top:20px;


}







.cb-public-calendar .cb-legend {


    display:flex;

    align-items:center;

    gap:8px;

    color:
    var(--cb-legend-text-color,var(--cb-text-color,#222));


    font-size:
    var(--cb-legend-size,14px);


}








.cb-public-calendar .cb-color {


    width:18px;

    height:18px;

    display:inline-block;

    border-radius:3px;

    border:1px solid var(--cb-card-border,#ddd);


}









.cb-public-calendar .cb-color.cb-available {


    background:
    var(--cb-available-background,#e7f7e7);


}








.cb-public-calendar .cb-color.cb-reserved {


    background:
    var(--cb-reserved-background,#f7dddd);


}








.cb-public-calendar .cb-color.cb-blocked,
.cb-public-calendar .cb-color.cb-occupied {


    background:
    var(--cb-occupied-background,#e5e5e5);


}