/* InnerView Demo Booking - slot picker */

/* Elementor's field group is a flex row; force a plain block stack. */
.iv-slot{display:block !important;width:100% !important;flex:0 0 100% !important;margin:0 0 12px;}
.iv-slot__dates,.iv-slot__times,.iv-slot__msg{width:100%;}

.iv-slot__label{display:block;font-size:14px;color:#00406E;margin:12px 0 6px;}
.iv-slot__label:first-child{margin-top:0;}
.iv-slot__label i{color:#EB5757;font-style:normal;}
.iv-slot__label span{font-weight:400;color:#6b7280;}

.iv-slot__dates{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-height:172px;overflow-y:auto;}
.iv-slot__times{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}

/* Themes commonly style bare <button>, so these need to win outright. */
.iv-slot .iv-slot__pick,
.iv-slot button.iv-slot__pick{background:#F5F5F5 !important;border:1px solid #e1e4e8 !important;
	border-radius:4px !important;color:#00406E !important;font-size:13px !important;
	font-weight:400 !important;line-height:1.3 !important;padding:9px 4px !important;
	margin:0 !important;min-height:0 !important;width:100% !important;cursor:pointer;
	text-align:center;box-shadow:none !important;text-transform:none !important;
	letter-spacing:normal !important;transition:.15s;}
.iv-slot .iv-slot__pick:hover{border-color:#00406E !important;}
.iv-slot .iv-slot__pick[aria-pressed="true"],
.iv-slot button.iv-slot__pick[aria-pressed="true"]{background:#00406E !important;
	border-color:#00406E !important;color:#fff !important;}
.iv-slot__pick small{display:block;font-size:11px;opacity:.75;}

.iv-slot__msg{font-size:13px;color:#6b7280;margin-top:8px;}
.iv-slot__msg.is-error{color:#EB5757;}

@media (max-width:480px){
	.iv-slot__dates{grid-template-columns:repeat(3,1fr);}
	.iv-slot__times{grid-template-columns:repeat(2,1fr);}
}

/* Fallback: link out to the Bookings page when in-page booking can't work. */
.iv-slot__fallback{width:100%;}
.iv-slot__fallback:not(:empty){margin-top:10px;}
.iv-slot .iv-slot__fallback-btn,
.iv-slot a.iv-slot__fallback-btn{display:inline-block;background:#00406E !important;
	border:1px solid #00406E !important;border-radius:4px;color:#fff !important;
	font-size:13px;line-height:1.3;padding:10px 16px;text-decoration:none !important;
	transition:.15s;}
.iv-slot .iv-slot__fallback-btn:hover{opacity:.9;color:#fff !important;}

/* Two-step navigation and the confirmation question. */
.iv-slot__nav{display:block !important;width:100% !important;flex:0 0 100% !important;}
.iv-slot .iv-slot__next,
.iv-slot__nav button.iv-slot__next{background:#00406E !important;border:1px solid #00406E !important;
	border-radius:4px !important;color:#fff !important;font-size:15px !important;line-height:1.3 !important;
	padding:12px 28px !important;cursor:pointer;width:auto !important;box-shadow:none !important;}
.iv-slot__nav .iv-slot__next:hover{opacity:.9;}
.iv-slot__confirm{width:100%;margin-top:14px;}
.iv-slot__confirm-opts{display:grid;grid-template-columns:repeat(2,minmax(0,120px));gap:8px;}
.iv-slot .iv-slot__back,
.iv-slot button.iv-slot__back{background:none !important;border:0 !important;color:#00406E !important;
	font-size:13px !important;padding:10px 0 0 !important;margin:0 !important;cursor:pointer;
	text-decoration:underline;width:auto !important;box-shadow:none !important;min-height:0 !important;}

.iv-slot__waiting {
	opacity: .6;
	cursor: wait;
}

form.iv-slot-sending .elementor-field-group,
form.iv-slot-sending .iv-slot__nav {
	pointer-events: none;
	opacity: .65;
}

.iv-slot-off {
	display: none !important;
}
