#fwb-region-buttons {
	display: flex;
	gap: 1rem;
	margin-top: 1rem;
	margin-bottom: 1rem;
	justify-content: center;
}

.fwb-region-btn {
	border: 2px solid #e17f3d;
	border-radius: 9999px;
	background-color: white;
	color: #e17f3d;
	font-weight: bold;
	padding: 0.6rem 1.5rem;
	cursor: pointer;
	transition: all 0.3s ease;
}

.fwb-region-btn.selected {
	background-color: #e17f3d;
	color: white;
}

#fwb-calendar {
	margin-bottom: 2em;
}

#fwb-calendar-month {
	color: #FF8739;
	font-weight: bold;
	font-size: 1.2em;
}

.fwb-date {
	padding: 10px;
	text-align: center;
	border-radius: 2px;
	font-size: 14px;
	cursor: pointer;
}

.fwb-available {
	background-color: #fff;
	color: #333;
	font-weight: bold;
	border: 1px solid #FF8739;
}

.fwb-available.selected {
	background-color: #FF8739;
	color: #fff;
}

.fwb-available.selected .fwb-mark {
	color: #fff;
}

.fwb-full {
	background-color: #dc3545;
	color: white;
}

.fwb-inactive {
	background-color: #ddd;
	border: 1px solid #ddd;
	color: #999;
}

.fwb-empty {
	background-color: transparent;
	cursor: default;
}
span.wpcf7-form-control.wpcf7-radio {
	margin-bottom: 2em;
	display: inline-block;
}

.fwb-ac-slider {
	width: 100%;
	overflow-x: hidden;
	gap: 16px;
	padding: 0px;
	scroll-behavior: smooth;
	margin-bottom: 2em;
}

.fwb-ac-brand-block {
	width: 100%;
}

.fwb-ac-slider .swiper-container {
	width: 100%;
}

.fwb-ac-slider .swiper-wrapper {
	margin-bottom: 20px!important;
}

.fwb-ac-slider::-webkit-scrollbar {
	height: 8px;
}
.fwb-ac-slider::-webkit-scrollbar-thumb {
	background-color: #ccc;
	border-radius: 4px;
}

.fwb-ac-item {
	min-width: 180px;
	flex-shrink: 0;
	text-align: center;
	border: 2px solid transparent;
	border-radius: 8px;
	cursor: pointer;
	transition: border-color 0.3s, box-shadow 0.3s;
}
.fwb-ac-item.selected {
	border-color: #0073aa;
	box-shadow: 0 0 10px rgba(0, 115, 170, 0.3);
}
.fwb-ac-item img {
	width: 100%;
	height: auto;
	border-radius: 4px;
}
.fwb-ac-item p {
	margin-top: 8px;
	font-size: 14px;
}


.fwb-calendar-nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 20px 0;
	padding: 10px 0;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
}

#prev-month {
	max-width: calc((100% - 30px) / 7);
	background-color: transparent;
	border: none;
}

#next-month {
	max-width: calc((100% - 30px) / 7);
	background-color: transparent;
	border: none;
}

.fwb-calendar-table {
	width: 100%;
	border-collapse: collapse;
	text-align: center;
}

.fwb-calendar-table thead {
	border: 1px solid #FF8739;
}

.fwb-calendar-table th {
	color: #fff;
	background-color: #FF8739;
	font-weight: bold;
	padding: 6px;
}
.fwb-date {
	padding: 10px 5px;
	border: 1px solid #FF8739;
	cursor: pointer;
}
.fwb-inactive {
	color: #ccc;
}
.fwb-full {
	color: red;
}
.fwb-partial {
	color: #f90;
}

.fwb-mark {
	display: block;
	font-size: 16px;
	margin-top: 4px;
}

.fwb-available .fwb-mark {
	color: #FF8739;
}
.fwb-legend {
	margin-top: 10px;
	display: flex;
	gap: 20px;
	justify-content: flex-end;
	font-size: 14px;
}
.fwb-legend-mark {
	display: inline-block;
	width: 1.2em;
	text-align: center;
	font-weight: bold;
}

#fwb-slot-select input {
	appearance: auto;
}

#fwb-confirm-payment {
	color: #fff;
	background-color: #3D5A80;
	padding: 0.6em 2em;
	border-radius: 999px;
	margin-top: 2em;
}

.fwb-agreement {
	margin-top: 2em;
}
#fwb-agree {
	appearance: auto;
	margin: 0px 3px 0px 1px;
}

.fwb-payment-method input {
	appearance: auto;
}

@media screen and (max-width: 479px) {
	#next-month,
	#prev-month {
		max-width: calc((100% - 30px) / 5);
	}
	.fwb-region-btn {
		padding: 0.4rem 1.2rem;
	}
	.fwb-legend {
		font-size: 11px;
	}
}