#frontend-booking-calendar {
    min-width: 800px;
    overflow-x: auto;
}
.fc-multimonth .fc-multimonth-months {
    grid-template-columns: repeat(2, 1fr) !important;
}



.fc td, .fc th {
  vertical-align: middle;
}
.fc-daygrid-day-events {
    display: none;
}
.fc .fc-day-disabled {
  background: #FAFBFC !important;
}
/* ✅ Available days (green) text color */
.fc-day[data-available="true"] .fc-daygrid-day-number {
    color: #000 !important;
    margin: 0 auto;
}

/* ✅ Unavailable days (grey) text color */
.fc-day[data-available="false"] .fc-daygrid-day-number {
    color: #707070 !important;
    margin: 0 auto;
}
.fc .fc-daygrid-day-number {
  font-weight: normal;
}
.fc-liquid-hack td, .fc-liquid-hack th {
  font-weight: normal;
}
.fc-theme-standard td, .fc-theme-standard th {
  border: 2px solid #FAFBFC;
}
.fc-day-other{}
.fc .fc-day-other .fc-daygrid-day-top {
  display: none;
}
.fc .fc-col-header-cell-cushion {
  padding: 15px 4px;
  color: #004d81;
}




#booking-container {
    display: flex;
    gap: 30px;
}

#booking-left {
    flex: 2;
}
#booking-sidebar {
    flex: 1;
    background: #FAFBFC;
    padding: 15px;
    height: fit-content;
}

#booking-sidebar h4 {
    margin: 0 0 10px;
}
#sidebar-excerpt {
    font-size: 14px;
    color: #555;
    margin-bottom: 15px;
}

.booking-step {
    display: none;
}
.booking-step.active {
    display: block;
}

.slot-boxes {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 10px;
}
.slot-box {
    padding: 10px 15px;
    background: #e9f7ef;
    border: 1px solid #5cb85c;
    border-radius: 5px;
    cursor: pointer;
}
.slot-box.selected {
    background: #5cb85c;
    color: #fff;
}
.info-buttons {
    display: flex;
    justify-content: space-between;
    margin-top: 15px;
}





/* ==============================
   Select Tickets Section
============================== */
#ticket-options {
    margin-top: 15px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.ticket-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #e5e5e5;
    padding-bottom: 10px;
}

.ticket-label {
    flex: 2;
    font-weight: bold;
    font-size: 15px;
}

.ticket-price {
    flex: 1;
    text-align: left;
    font-size: 14px;
    color: #444;
}

.ticket-qty {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 5px;
    justify-content: flex-end;
}

.ticket-qty button {
    background: transparent;
    border: 2px solid #3a66b7;
    color: #3a66b7;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    font-weight: bold;
    font-size: 16px;
    cursor: pointer;
}

.ticket-qty button:hover {
    background: #3a66b7;
    color: #fff;
}

.ticket-qty .qty-input {
    width: 40px;
    text-align: center;
    font-size: 15px;
    border: none;
    background: transparent;
    font-weight: bold;
}

.info-text {
    margin-bottom: 20px;
}




#sidebar-selection {
    font-size: 14px;
}


#sidebar-selection i {
    margin-right: 5px;
    color: #ffd200;
}

#sidebar-tickets {
    font-size: 14px;
}



#sidebar-tickets i {
    color: #ffd200;
}




.ques {
margin-top: 20px;
}

.form_check {
margin-top: 5px;
}

.form-row input {
margin-top: 5px;
}






/* Disabled button ka style */
#go-to-confirmation:disabled {
    background: #ccc !important;
    cursor: not-allowed;
    opacity: 0.7;
}

/* Error field ka style */
.input-error {
    border: 2px solid red !important;
}
.error-msg {
    color: red;
    font-size: 13px;
    margin-top: 4px;
    display: none;
}



