.pt-booking-page{background:linear-gradient(180deg,#fff6f9 0,#fff 430px)}
.pt-booking-page main#content{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:30px 0 90px}
.pt-booking-page .page-header{display:none}
.pt-booking-page .page-header:before{content:"PROGRAMARE ONLINE";display:block;margin-bottom:10px;color:#a94e70;font-size:.75rem;font-weight:800;letter-spacing:.16em}
.pt-booking-page .page-title{margin:0;color:#352f32;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.5rem,5vw,4.5rem);letter-spacing:-.04em}
.pt-booking-page .page-content{padding:clamp(20px,4vw,48px);background:#fff;border:1px solid #eadde2;border-radius:24px;box-shadow:0 30px 80px rgba(67,43,52,.11)}
#bookit-app .bookit-app-content{max-width:1050px!important}
#bookit-app .default-theme{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
#bookit-app .monthly-calendar .header{color:#a94e70!important;font-weight:750!important;letter-spacing:.03em}
#bookit-app .calendar-container{border:1px solid #eadde2!important;border-radius:16px!important;overflow:hidden!important;background:#fff!important}
#bookit-app .calendar-header{background:#fff4f7!important;border-color:#eadde2!important}
#bookit-app .calendar-header .month{color:#74666b!important;transition:background-color .18s,color .18s!important}
#bookit-app .calendar-header .month.active{background:#d97898!important;color:#fff!important;box-shadow:0 8px 20px rgba(169,78,112,.22)!important}
#bookit-app .calendar-header .month.active .title,#bookit-app .calendar-header .month.active .year{color:#fff!important}
#bookit-app .calendar-header .left-arrow,#bookit-app .calendar-header .right-arrow{background:#f8e7ed!important}
#bookit-app .calendar-header .left-icon,#bookit-app .calendar-header .right-icon{background-color:#a94e70!important}
#bookit-app .calendar-body .weeks{background:#fffafa!important;color:#8b757d!important;border-color:#eadde2!important}
#bookit-app .calendar-body .date{border-color:#f0e5e9!important}
#bookit-app .calendar-body .date>span.available{color:#9d4566!important;background:#fff0f5!important;border:1px solid #e7b9c9!important;border-radius:10px!important;box-shadow:0 2px 8px rgba(169,78,112,.12),inset 0 0 0 1px rgba(255,255,255,.7)!important;font-weight:750!important;transition:transform .16s,box-shadow .16s,background-color .16s!important}
#bookit-app .calendar-body .date>span.available:hover,#bookit-app .calendar-body .date>span.active,#bookit-app .calendar-body .date>span.selected{color:#fff!important;background:#d97898!important;border-color:#d97898!important;box-shadow:0 10px 22px rgba(169,78,112,.22)!important;transform:translateY(-1px)!important}
#bookit-app .calendar-body .date .day-info{color:inherit!important}
#bookit-app .booking-form{background:#fffafa!important;border-color:#eadde2!important}
#bookit-app .booking-form .form-group label,#bookit-app .booking-form .form-group .label{color:#6f5e65!important}
#bookit-app select,#bookit-app input,#bookit-app textarea{border-color:#dfcbd3!important;border-radius:9px!important;background-color:#fff!important;color:#352f32!important}
#bookit-app select:focus,#bookit-app input:focus,#bookit-app textarea:focus{border-color:#d97898!important;box-shadow:0 0 0 3px rgba(217,120,152,.14)!important;outline:0!important}
#bookit-app button,#bookit-app input[type=submit],#bookit-app .bookit-button{background:#a94e70!important;border-color:#a94e70!important;color:#fff!important;border-radius:10px!important;box-shadow:0 9px 22px rgba(169,78,112,.18)!important}
#bookit-app button:hover,#bookit-app input[type=submit]:hover{background:#913e5d!important;border-color:#913e5d!important}
#bookit-app .bookit-modal-header,#bookit-app .appointment-info{background:#fff4f7!important;color:#352f32!important}
#bookit-app .bookit-modal-container{border-radius:18px!important;box-shadow:0 30px 90px rgba(55,38,45,.22)!important}
@media(max-width:700px){.pt-booking-page main#content{padding:42px 0 64px}.pt-booking-page .page-content{padding:14px;border-radius:16px}.pt-booking-page .page-title{font-size:2.55rem}}

/* Doctor-first booking experience. */
.ptv2-booking-shell{max-width:1180px;margin:0 auto}.ptv2-booking-intro{text-align:center;margin-bottom:28px}.ptv2-booking-intro>p{margin:0 0 7px;color:#b65779;font-size:12px;font-weight:800;letter-spacing:.14em}.ptv2-booking-intro h2{margin:0 0 23px;color:#3b3034;font-size:clamp(29px,4vw,45px)}
.ptv2-booking-steps{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.ptv2-booking-steps span{display:flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:#f5eef1;color:#8b7b81;font-size:12px;font-weight:750}.ptv2-booking-steps span.is-active{background:#f8dce6;color:#8f3f5d}.ptv2-booking-steps b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#fff}
.ptv2-doctor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:24px}.ptv2-doctor-card{display:flex;align-items:center;gap:15px;padding:18px 20px;border:1px solid #ead8df;border-radius:15px;background:#fff;color:inherit!important;text-decoration:none!important;box-shadow:0 10px 28px rgba(70,43,53,.06);transition:.22s ease}.ptv2-doctor-card:hover,.ptv2-doctor-card.is-selected{transform:translateY(-4px);border-color:#cc7392;box-shadow:0 18px 38px rgba(98,49,68,.13)}.ptv2-doctor-card.is-selected{background:#fff6f9}.ptv2-doctor-avatar{display:grid;place-items:center;flex:0 0 54px;height:54px;border-radius:16px;background:linear-gradient(145deg,#d77d9c,#ad4d70);color:#fff;font-size:19px;font-weight:800}.ptv2-doctor-card>span:last-child{display:grid;gap:2px}.ptv2-doctor-card small{color:#a46b80}.ptv2-doctor-card strong{color:#3d3136;font-size:17px}.ptv2-doctor-card em{margin-top:3px;color:#b14d71;font-size:11px;font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.ptv2-selected-doctor{display:flex;align-items:center;gap:10px;margin:8px 0 18px;padding:13px 17px;border-radius:11px;background:#fcebf1;color:#6f5962}.ptv2-selected-doctor strong{color:#8f3f5d}.ptv2-selected-doctor a{margin-left:auto;color:#9d4565;font-size:12px;font-weight:750}.ptv2-bookit-wrap{padding:18px;border:1px solid #ead9df;border-radius:18px;background:#fff;box-shadow:0 20px 55px rgba(72,45,55,.08)}.ptv2-bookit-wrap .description[hidden]{display:none!important}.ptv2-bookit-wrap .ptv2-leave-day{background:#f0e8eb!important;color:#a69299!important;cursor:not-allowed!important}.ptv2-bookit-wrap .ptv2-leave-day:after{content:"Indisponibil";display:block;font-size:8px;text-decoration:none}.ptv2-booking-placeholder{display:flex;align-items:center;justify-content:center;gap:18px;min-height:210px;padding:30px;border:2px dashed #e7cbd5;border-radius:18px;background:#fff9fb;text-align:left}.ptv2-booking-placeholder>span{display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:#c45f82;color:#fff;font-size:21px;font-weight:800}.ptv2-booking-placeholder strong{color:#4b3a41;font-size:19px}.ptv2-booking-placeholder p{max-width:540px;margin:5px 0 0;color:#7e6c73}
.ptv2-service-choice-title{width:30%;margin:4px 0 14px;text-align:center;color:#ad4d70;font-size:18px}.ptv2-doctor-contact{max-width:250px;overflow-wrap:anywhere;color:#745f68!important;font-size:11px!important;line-height:1.35}
@media(max-width:700px){.ptv2-bookit-wrap{padding:7px}.ptv2-selected-doctor{align-items:flex-start;flex-wrap:wrap}.ptv2-selected-doctor a{width:100%;margin-left:0}.ptv2-booking-placeholder{align-items:flex-start}.ptv2-booking-intro h2{font-size:31px}}
@media(max-width:700px){.ptv2-service-choice-title{width:100%;margin:10px 0 12px;text-align:left}}

.ptv2-step-two{scroll-margin-top:120px;display:flex;align-items:center;gap:16px;margin:34px 0 14px;padding:19px 22px;border-radius:15px;background:linear-gradient(135deg,#b45275,#cc7795);color:#fff;box-shadow:0 15px 32px rgba(155,65,98,.2)}.ptv2-step-two>span{display:grid;place-items:center;flex:0 0 58px;height:58px;border-radius:50%;background:#fff;color:#a74669;font-size:22px;font-weight:850;text-transform:uppercase}.ptv2-step-two h3{margin:0;color:#fff;font-size:25px}.ptv2-step-two p{margin:3px 0 0;color:#fff;font-size:13px;opacity:.9}.ptv2-selected-doctor small{color:#9a5b72;font-weight:700}.ptv2-selected-doctor strong+small{padding-left:10px;border-left:1px solid #ddb7c5}
.ptv2-bookit-wrap .sidebar-filters>.header{display:none!important}
@media(max-width:700px){.ptv2-step-two{align-items:flex-start;padding:16px}.ptv2-step-two>span{flex-basis:48px;height:48px}.ptv2-step-two h3{font-size:21px}.ptv2-selected-doctor strong+small{width:100%;padding:0;border:0}}

#bookit-app .monthly-calendar .calendar-header .left-arrow,#bookit-app .monthly-calendar .calendar-header .right-arrow{display:grid!important;place-items:center;min-width:34px!important}
#bookit-app .monthly-calendar .calendar-header .left-icon,#bookit-app .monthly-calendar .calendar-header .right-icon{position:static!important;display:grid!important;place-items:center;width:28px!important;height:32px!important;background:none!important;color:#a94e70!important;font-size:30px!important;font-weight:500!important;line-height:1!important}
#bookit-app .monthly-calendar .calendar-header .left-icon:before{content:"‹"}
#bookit-app .monthly-calendar .calendar-header .right-icon:before{content:"›"}
#bookit-app .ptv2-patient-field .form-group{width:100%}
#bookit-app .ptv2-patient-field input,#bookit-app .ptv2-patient-field textarea{box-sizing:border-box;width:100%;border:0;border-bottom:1px solid #e5cbd5;border-radius:0;background:#fff;color:#383034;font:inherit;outline:0}
#bookit-app .ptv2-patient-field input{height:58px;padding:20px 0 5px}
#bookit-app .ptv2-patient-field textarea{min-height:94px;padding:26px 0 8px;resize:vertical}
#bookit-app .ptv2-patient-field label{display:none!important}
#bookit-app .bookit-modal-body .bookit-row:has(#bookit_full_name) label,
#bookit-app .bookit-modal-body .bookit-row:has(#bookit_phone) label,
#bookit-app .bookit-modal-body .bookit-row:has(#bookit_email) label{display:none!important}
#bookit-app .ptv2-symptoms-field{margin-top:8px}
#bookit-app .ptv2-booking-legal{margin:14px 5px 4px;padding:13px 14px;border:1px solid #ead8df;border-radius:10px;background:#fff8fa}
#bookit-app .ptv2-booking-legal label{display:flex!important;align-items:flex-start;gap:10px;margin:0;color:#5f5056;font-size:13px;line-height:1.45}
#bookit-app .ptv2-booking-legal input{flex:0 0 18px;width:18px;height:18px;margin:2px 0 0;accent-color:#a94e70}
#bookit-app .ptv2-booking-legal a{color:#9d4566;font-weight:750;text-decoration:underline}
@media(max-width:600px){#bookit-app .ptv2-booking-legal{padding:11px}#bookit-app .ptv2-booking-legal label{font-size:12px}}
#bookit-app .bookit-modal-body .validation-icon.has-success-icon{display:none!important}
#bookit-app .ptv2-booking-error{margin:0 5px 18px;padding:12px 15px;border:1px solid #e7a7b8;border-radius:9px;background:#fff0f4;color:#8e294d;font-size:14px;font-weight:700;text-align:left}
#bookit-app .ptv2-confirmation-fallback .appointment-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0;padding:22px;border:1px solid #ead8df;background:#fff9fb}
#bookit-app .ptv2-confirmation-fallback .info-block{margin:0}
#bookit-app .ptv2-confirmation-fallback .action{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
#bookit-app .ptv2-confirmation-fallback .ptv2-close-confirmation{background:#fff!important;color:#a94e70!important}
@media(max-width:600px){#bookit-app .ptv2-confirmation-fallback .appointment-details{grid-template-columns:1fr}}
#bookit-app .ptv2-phone-group{position:relative;width:100%!important}
#bookit-app .ptv2-phone-group #bookit_phone{box-sizing:border-box;width:100%!important;margin:0!important}
#bookit-app .ptv2-phone-group>label{display:block!important}
#bookit-app .ptv2-phone-group .ptv2-phone-validation,#bookit-app .ptv2-phone-group .ptv2-phone-error{display:none!important}

/* Doctor portrait and compact final booking step. */
.ptv2-doctor-avatar{overflow:hidden;flex-basis:62px;height:62px;border-radius:17px}.ptv2-doctor-avatar img{width:100%;height:100%;object-fit:cover}
.ptv2-bookit-wrap .booking-form{display:flex!important;align-items:flex-end!important;gap:14px!important;flex-wrap:wrap!important;padding:18px!important}.ptv2-bookit-wrap .booking-form>.form-group:first-child{display:none!important}.ptv2-bookit-wrap .booking-form>.form-group:nth-child(2){flex:1 1 330px!important;min-width:250px!important}.ptv2-bookit-wrap .booking-form>.form-group:nth-child(2) select{width:100%!important;min-width:250px!important}.ptv2-bookit-wrap .booking-form>button,.ptv2-bookit-wrap .booking-form>.bookit-button{flex:0 0 auto!important;white-space:nowrap!important}
@media(max-width:600px){.ptv2-bookit-wrap .booking-form>.form-group:nth-child(2),.ptv2-bookit-wrap .booking-form>.form-group:nth-child(2) select{min-width:100%!important;width:100%!important}.ptv2-bookit-wrap .booking-form>button,.ptv2-bookit-wrap .booking-form>.bookit-button{width:100%!important}}

/* Keep step markers perfectly circular and visually consistent at every size. */
.ptv2-booking-placeholder>span,.ptv2-step-two>span{box-sizing:border-box;width:58px;height:58px;flex:0 0 58px;aspect-ratio:1;border-radius:50%;background:#c45f82;color:#fff}
.ptv2-booking-steps b{box-sizing:border-box;flex:0 0 22px;aspect-ratio:1}
.ptv2-step-two{border:2px dashed #e7cbd5;background:#fff9fb;color:#4b3a41;box-shadow:none}
.ptv2-step-two h3{color:#4b3a41}.ptv2-step-two p{color:#7e6c73;opacity:1}

/* Preserve the desktop booking composition on narrow screens, only compacted. */
@media(max-width:700px){
	.ptv2-booking-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
	.ptv2-booking-steps span{min-width:0;justify-content:center;padding:7px 5px;font-size:10px;text-align:center}
	.ptv2-booking-placeholder>span,.ptv2-step-two>span{width:52px;height:52px;flex-basis:52px}
	#bookit-app .bookit-app-content .default-theme{display:grid!important;grid-template-columns:minmax(112px,30%) minmax(0,1fr)!important;align-items:stretch!important}
	#bookit-app .sidebar-filters,#bookit-app .monthly-calendar{box-sizing:border-box!important;width:auto!important;min-width:0!important}
	#bookit-app .sidebar-filters .filter{min-width:0!important;padding-inline:8px!important}
	#bookit-app .sidebar-filters .filter .title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
	#bookit-app .monthly-calendar .calendar-container{min-width:0!important}
	#bookit-app .monthly-calendar .calendar-header .months{min-width:0!important}
	#bookit-app .monthly-calendar .calendar-header .month{min-width:0!important;padding-inline:2px!important}
	#bookit-app .monthly-calendar .calendar-header .month .title,#bookit-app .monthly-calendar .calendar-header .month .year{font-size:8px!important}
	#bookit-app .calendar-body .weeks span{font-size:8px!important}
	#bookit-app .calendar-body .date{min-width:0!important}
	#bookit-app .calendar-body .date>span{min-height:48px!important;padding:5px 3px!important;font-size:10px!important}
	#bookit-app .calendar-body .date .day-info{display:none!important}
	#bookit-app .booking-form,#bookit-app .bookit-modal-mask{grid-column:1/-1}
	#bookit-app .bookit-modal-header .appointment-info{display:flex!important;gap:12px!important}
	#bookit-app .bookit-modal-header .appointment-info .col-2{width:50%!important;margin-top:0!important;text-align:left!important}
}
@media(max-width:420px){
	.ptv2-doctor-card{gap:11px;padding:14px}
	.ptv2-doctor-avatar{flex-basis:54px;height:54px}
	#bookit-app .bookit-app-content .default-theme{grid-template-columns:105px minmax(0,1fr)!important}
}

/* Long labels and typed descriptions must remain inside their controls. */
#bookit-app .sidebar-filters .filter .title{
	overflow:visible!important;
	text-overflow:clip!important;
	white-space:normal!important;
	overflow-wrap:anywhere!important;
	word-break:break-word;
	line-height:1.25!important;
}
#bookit-app textarea{
	white-space:pre-wrap!important;
	overflow-wrap:anywhere!important;
	word-break:break-word;
}

/* Keep every calendar marker inside its day cell at compact widths. */
#bookit-app .calendar-body .date,
#bookit-app .calendar-body .date>span{
	box-sizing:border-box!important;
	min-width:0!important;
	max-width:100%!important;
	overflow:hidden!important;
}
#bookit-app .calendar-body .date .day-info{
	box-sizing:border-box!important;
	max-width:100%!important;
	white-space:nowrap!important;
	overflow:hidden!important;
}
@media(max-width:900px){
	#bookit-app .calendar-body .date .day-info{display:none!important}
}

#bookit-app .ptv2-saved-child-field select{
	box-sizing:border-box;
	width:100%;
	min-height:56px!important;
	padding:15px 42px 8px 0!important;
	border:0!important;
	border-bottom:1px solid #e4cbd4!important;
	border-radius:0!important;
	background-color:#fff!important;
	color:#4d3d43!important;
	font:inherit!important;
	font-size:17px!important;
}

/* Editable child combobox: a real list controlled by the site, not browser suggestions. */
#bookit-app .ptv2-child-combobox{position:relative}
#bookit-app .ptv2-child-combobox #pt_child_name{padding-right:46px}
#bookit-app .ptv2-child-toggle{
	position:absolute!important;
	right:0!important;
	top:9px!important;
	z-index:3;
	display:grid!important;
	place-items:center;
	width:38px!important;
	height:38px!important;
	min-width:38px!important;
	padding:0!important;
	border:0!important;
	border-radius:50%!important;
	background:#f8e7ed!important;
	color:#98435f!important;
	box-shadow:none!important;
	font-size:24px!important;
	line-height:1!important;
}
#bookit-app .ptv2-child-menu{
	position:absolute;
	top:calc(100% + 6px);
	left:0;
	right:0;
	z-index:10020;
	overflow:auto;
	max-height:220px;
	padding:6px;
	border:1px solid #e5cbd5;
	border-radius:11px;
	background:#fff;
	box-shadow:0 16px 40px rgba(69,43,53,.18);
}
#bookit-app .ptv2-child-menu[hidden]{display:none!important}
#bookit-app .ptv2-child-option{
	display:block!important;
	width:100%!important;
	min-height:40px!important;
	padding:9px 12px!important;
	border:0!important;
	border-radius:7px!important;
	background:#fff!important;
	color:#4d3d43!important;
	box-shadow:none!important;
	text-align:left!important;
	font:inherit!important;
	font-weight:700!important;
}
#bookit-app .ptv2-child-option:hover,
#bookit-app .ptv2-child-option:focus{background:#fbeaf0!important;color:#963f60!important;outline:none}

/*
 * One visual language for the complete Bookit flow.  The plugin ships teal,
 * green and yellow states; keep every interactive state inside our rose
 * palette on desktop and mobile.
 */
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter.disabled{
	background:#fff4f7!important;
	color:#4b3a41!important;
	border:1px solid #f0dce4!important;
	border-radius:10px!important;
}
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter.active,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter:active,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter:focus,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter:hover{
	background:#d97898!important;
	border-color:#d97898!important;
	color:#fff!important;
}
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter.active .title,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter.active .description,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter:active .title,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter:active .description,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter:focus .title,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter:focus .description,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter:hover .title,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter:hover .description{
	color:#fff!important;
}
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .slide-button,
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .slide-button:hover{
	background:#f8e7ed!important;
}
#bookit-app .bookit-app-content .default-theme .sidebar-filters .header,
#bookit-app .bookit-app-content .default-theme .calendar-body .weeks span{color:#8f3f5d!important}
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter .selected-icon{
	position:relative!important;
	display:grid!important;
	place-items:center!important;
	flex:0 0 27px!important;
	width:27px!important;
	height:27px!important;
	margin-right:0!important;
	border-radius:50%!important;
	background:#fff!important;
	color:#9d4566!important;
}
#bookit-app .bookit-app-content .default-theme .sidebar-filters .filters-container .filter .selected-icon:after{
	content:"✓";
	color:#9d4566;
	font-size:17px;
	font-weight:900;
	line-height:1;
}
#bookit-app .bookit-app-content .default-theme .monthly-calendar .calendar-body .dates .week .date>span:not(.available){
	background:#fffafa!important;
	color:#b09fa6!important;
}
#bookit-app .bookit-app-content .default-theme .booking-form select{
	background-color:#fff!important;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24'%3E%3Cpath fill='%23a94e70' d='m7 10 5 5 5-5z'/%3E%3C/svg%3E")!important;
}
#bookit-app .bookit-app-content .default-theme .booking-form,
#bookit-app .bookit-app-content .default-theme .booking-form .form-group{color:#6f5e65!important}
#bookit-app .bookit-app-content .default-theme .monthly-calendar .calendar-container .calendar-body .dates .week .date.today span,
#bookit-app .bookit-app-content .default-theme .monthly-calendar .calendar-container .calendar-body .dates .week .date.selected-day span.available,
#bookit-app .bookit-app-content .default-theme .monthly-calendar .calendar-container .calendar-body .dates .week .date:active span.available,
#bookit-app .bookit-app-content .default-theme .monthly-calendar .calendar-container .calendar-body .dates .week .date:focus span.available,
#bookit-app .bookit-app-content .default-theme .monthly-calendar .calendar-container .calendar-body .dates .week .date:hover span.available{
	background:#fff4f7!important;
	border:1px solid #f0dce4!important;
	border-top:4px solid #d97898!important;
	color:#9d4566!important;
}
#bookit-app .bookit-app-content .default-theme .monthly-calendar .selected-day-month{color:#9d4566!important}
#bookit-app .bookit-app-content .default-theme .monthly-calendar .selected-day-flag{background:#fff4f7!important;border-color:#f0dce4!important}

#bookit-app .bookit-app-content .default-theme .monthly-calendar .calendar-container .calendar-body .dates .week .date.ptv2-no-slots span,
#bookit-app .bookit-app-content .default-theme .monthly-calendar .calendar-container .calendar-body .dates .week .date.ptv2-no-slots span.available,
#bookit-app .bookit-app-content .default-theme .monthly-calendar .calendar-container .calendar-body .dates .week .date.ptv2-no-slots:hover span.available{
	background:#eef0f2!important;
	border:1px solid #d9dde1!important;
	border-top:4px solid #a7adb4!important;
	color:#8b9299!important;
	box-shadow:none!important;
}
/* A calm, readable confirmation with one themed calendar dropdown. */
#bookit-app .bookit-modal-mask{background:rgba(53,47,50,.58)!important}
#bookit-app .bookit-modal-container{box-sizing:border-box!important;width:min(720px,calc(100vw - 32px))!important;max-width:720px!important}
#bookit-app .ptv2-confirmation-overlay{
	position:fixed!important;
	inset:0!important;
	z-index:1000000!important;
	display:grid!important;
	place-items:center!important;
	box-sizing:border-box!important;
	padding:16px!important;
	overflow:auto!important;
	background:rgba(53,47,50,.62)!important;
}
#bookit-app .ptv2-confirmation-overlay .ptv2-confirmation-container{
	position:relative!important;
	width:min(720px,100%)!important;
	max-height:calc(100vh - 32px)!important;
	margin:auto!important;
	overflow:auto!important;
	border-radius:22px!important;
	background:#fff!important;
	box-shadow:0 24px 70px rgba(41,24,31,.3)!important;
}
#bookit-app .bookit-modal-body.appointment-confirmation{box-sizing:border-box!important;padding:30px 34px 34px!important;color:#4b3a41!important}
#bookit-app .bookit-modal-body.appointment-confirmation .success-icon{
	position:relative!important;
	width:64px!important;
	height:64px!important;
	margin:0 auto 12px!important;
	border-radius:50%!important;
	background:#c45f82!important;
}
#bookit-app .bookit-modal-body.appointment-confirmation .success-icon:after{
	content:"✓";
	position:absolute;
	inset:0;
	display:grid;
	place-items:center;
	color:#fff;
	font-size:34px;
	font-weight:800;
}
#bookit-app .bookit-modal-body.appointment-confirmation h3,
#bookit-app .bookit-modal-body.appointment-confirmation .success-title{color:#8f3f5d!important;font-size:22px!important;line-height:1.25!important}
#bookit-app .bookit-modal-body.appointment-confirmation>p{color:#74666b!important;font-size:14px!important;line-height:1.45!important}
#bookit-app .bookit-modal-body.appointment-confirmation .appointment-details{
	box-sizing:border-box!important;
	width:100%!important;
	margin:24px 0!important;
	padding:22px!important;
	border:1px solid #ecd7df!important;
	border-radius:15px!important;
	background:#fff4f7!important;
	text-align:left!important;
}
#bookit-app .bookit-modal-body.appointment-confirmation .appointment-details>.bookit-row{
	display:grid!important;
	grid-template-columns:repeat(2,minmax(0,1fr))!important;
	gap:18px!important;
	width:100%!important;
}
#bookit-app .bookit-modal-body.appointment-confirmation .appointment-details>.bookit-row>.col-2{
	display:grid!important;
	grid-template-columns:1fr!important;
	align-content:start!important;
	gap:10px!important;
	box-sizing:border-box!important;
	width:100%!important;
	max-width:none!important;
	padding:0!important;
}
#bookit-app .bookit-modal-body.appointment-confirmation .appointment-details .info-block{
	box-sizing:border-box!important;
	min-width:0!important;
	margin:0!important;
	padding:10px 12px!important;
	border:1px solid #f1dfe6!important;
	border-radius:10px!important;
	background:#fff!important;
}
#bookit-app .bookit-modal-body.appointment-confirmation .appointment-details .info-block+.info-block{margin-top:0!important}
#bookit-app .bookit-modal-body.appointment-confirmation .appointment-details .label{color:#a16b7e!important;font-size:11px!important;font-weight:800!important;letter-spacing:.04em!important}
#bookit-app .bookit-modal-body.appointment-confirmation .appointment-details .info{color:#3f3438!important;font-size:15px!important;line-height:1.35!important;overflow-wrap:anywhere!important}
#bookit-app .bookit-modal-body.appointment-confirmation .action{display:flex!important;justify-content:center!important;box-sizing:border-box!important;width:100%!important;padding:0!important}
#bookit-app .bookit-modal-body.appointment-confirmation .print-window,
#bookit-app .bookit-modal-body.appointment-confirmation .ptv2-print-confirmation,
#bookit-app .bookit-modal-body.appointment-confirmation .ptv2-native-calendar-source{display:none!important}
#bookit-app .ptv2-calendar-dropdown{
	position:relative!important;
	box-sizing:border-box!important;
	width:min(100%,360px)!important;
}
#bookit-app .ptv2-calendar-toggle{
	display:grid!important;
	grid-template-columns:26px 1fr 18px!important;
	align-items:center!important;
	gap:8px!important;
	box-sizing:border-box!important;
	width:100%!important;
	min-height:50px!important;
	padding:11px 15px!important;
	border:1px solid #c45f82!important;
	border-radius:10px!important;
	background:#c45f82!important;
	box-shadow:0 9px 22px rgba(169,78,112,.18)!important;
	color:#fff!important;
	font-size:14px!important;
	font-weight:800!important;
	line-height:1.2!important;
	text-transform:none!important;
	cursor:pointer!important;
}
#bookit-app .ptv2-calendar-toggle:hover,#bookit-app .ptv2-calendar-toggle:focus{background:#ad496c!important;color:#fff!important}
#bookit-app .ptv2-calendar-symbol{position:relative!important;display:block!important;box-sizing:border-box!important;width:19px!important;height:18px!important;border:2px solid currentColor!important;border-radius:3px!important}
#bookit-app .ptv2-calendar-symbol:before{content:""!important;position:absolute!important;top:3px!important;right:0!important;left:0!important;border-top:2px solid currentColor!important}
#bookit-app .ptv2-calendar-symbol:after{content:""!important;position:absolute!important;top:-4px!important;left:3px!important;width:2px!important;height:5px!important;border-radius:2px!important;background:currentColor!important;box-shadow:7px 0 0 currentColor!important}
#bookit-app .ptv2-calendar-chevron{display:block!important;width:9px!important;height:9px!important;border-right:2px solid currentColor!important;border-bottom:2px solid currentColor!important;transform:rotate(45deg)!important;transition:transform .18s ease!important}
#bookit-app .ptv2-calendar-dropdown.is-open .ptv2-calendar-chevron{transform:rotate(-135deg)!important}
#bookit-app .ptv2-calendar-menu{
	position:absolute!important;
	top:calc(100% + 7px)!important;
	left:0!important;
	z-index:120!important;
	dis:grid!important;
	box-sizing:border-box!important;
	width:100%!important;
	padding:6px!important;
	border:1px solid #e3b9c8!important;
	border-radius:12px!important;
	background:#fff9fb!important;
	box-shadow:0 16px 34px rgba(83,51,64,.18)!important;
}
#bookit-app .ptv2-calendar-menu[hidden]{display:none!important}
#bookit-app .ptv2-calendar-option{
	box-sizing:border-box!important;
	width:100%!important;
	min-height:44px!important;
	padding:10px 13px!important;
	border:0!important;
	border-radius:8px!important;
	background:transparent!important;
	box-shadow:none!important;
	color:#8f3f5d!important;
	font-size:14px!important;
	font-weight:750!important;
	line-height:1.25!important;
	text-align:left!important;
	text-transform:none!important;
	cursor:pointer!important;
}
#bookit-app .ptv2-calendar-option:hover,#bookit-app .ptv2-calendar-option:focus{background:#f8e7ed!important;color:#743047!important}
#bookit-app .bookit-modal-container{position:relative!important}
#bookit-app .bookit-modal-container .close-button{
	position:absolute!important;
	top:14px!important;
	right:14px!important;
	display:block!important;
	box-sizing:border-box!important;
	width:38px!important;
	height:38px!important;
	min-width:38px!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	border-radius:50%!important;
	background:#c45f82!important;
	box-shadow:0 7px 18px rgba(169,78,112,.2)!important;
	z-index:130!important;
}
#bookit-app .bookit-modal-container .close-button:before,#bookit-app .bookit-modal-container .close-button:after{top:18px!important;left:10px!important;width:18px!important;height:2px!important;background:#fff!important}
#bookit-app .ptv2-confirmation-close{
	position:absolute!important;
	top:12px!important;
	right:12px!important;
	display:grid!important;
	place-items:center!important;
	width:38px!important;
	height:38px!important;
	min-width:38px!important;
	padding:0!important;
	border:0!important;
	border-radius:50%!important;
	background:#c45f82!important;
	color:#fff!important;
	box-shadow:none!important;
	font-size:24px!important;
	line-height:1!important;
}

/* On a phone the service list belongs above the full-width calendar. */
@media(max-width:700px){
	.pt-booking-page main#content{width:min(100% - 18px,1180px)!important;padding-top:24px!important}
	.pt-booking-page .page-content{padding:10px!important}
	.ptv2-bookit-wrap{padding:12px!important}
	#bookit-app .bookit-app-content .default-theme{
		display:flex!important;
		flex-direction:column!important;
		align-items:stretch!important;
		gap:16px!important;
		width:100%!important;
	}
	#bookit-app .sidebar-filters{
		position:static!important;
		width:100%!important;
		height:auto!important;
		min-height:0!important;
	}
	#bookit-app .sidebar-filters .filters-container{
		position:static!important;
		top:auto!important;
		display:grid!important;
		grid-template-columns:repeat(2,minmax(0,1fr))!important;
		gap:10px!important;
		box-sizing:border-box!important;
		width:100%!important;
		height:auto!important;
	}
	#bookit-app .sidebar-filters .filters-container .filter{
		box-sizing:border-box!important;
		min-width:0!important;
		min-height:64px!important;
		margin:0!important;
		padding:12px 14px!important;
	}
	#bookit-app .sidebar-filters .filter .title{font-size:14px!important;line-height:1.25!important;overflow-wrap:normal!important;word-break:normal!important}
	#bookit-app .sidebar-filters .filters-container .slide-button{display:none!important}
	#bookit-app .monthly-calendar{
		box-sizing:border-box!important;
		width:100%!important;
		height:auto!important;
		min-height:0!important;
	}
	#bookit-app .monthly-calendar .calendar-container,
	#bookit-app .monthly-calendar .calendar-body{box-sizing:border-box!important;width:100%!important;height:auto!important}
	#bookit-app .monthly-calendar .calendar-header .month:nth-child(n+4){display:none!important}
	#bookit-app .monthly-calendar .calendar-header .month .title,
	#bookit-app .monthly-calendar .calendar-header .month .year{font-size:10px!important}
	#bookit-app .calendar-body .weeks span{font-size:10px!important}
	#bookit-app .calendar-body .date>span{min-height:44px!important;padding:7px 5px!important;font-size:12px!important}
	#bookit-app .booking-form{
		box-sizing:border-box!important;
		width:100%!important;
		height:auto!important;
		min-height:0!important;
		padding:14px!important;
	}
	.ptv2-bookit-wrap #bookit-app .booking-form>.form-group:nth-child(2){flex:0 0 auto!important;height:auto!important;min-height:0!important}
	.ptv2-bookit-wrap #bookit-app .booking-form>.form-group:last-child{flex:0 0 auto!important;height:auto!important}
	#bookit-app .bookit-modal-container{width:calc(100vw - 20px)!important;max-height:calc(100vh - 24px)!important;margin:10px!important}
	#bookit-app .bookit-modal-body.appointment-confirmation{padding:24px 16px 26px!important}
	#bookit-app .bookit-modal-body.appointment-confirmation .appointment-details{grid-template-columns:1fr!important;gap:12px!important;margin:18px 0!important;padding:17px!important}
	#bookit-app .bookit-modal-body.appointment-confirmation .appointment-details>.bookit-row{grid-template-columns:1fr!important;gap:10px!important}
	#bookit-app .ptv2-calendar-dropdown{width:100%!important}
}

@media(max-width:420px){
	#bookit-app .bookit-app-content .default-theme{display:flex!important}
	#bookit-app .sidebar-filters{width:100%!important}
}

/* Keep every Bookit loading indicator inside the Pediatric-Tim rose palette. */
#bookit-app .loader .loading>div,
#bookit-app .loading>div,
.bookit-app .loader .loading>div,
.bookit-app .loading>div{
	background:#c45f82!important;
	background-color:#c45f82!important;
}

/* Patient details and every modal label must use the Pediatric-Tim palette. */
#bookit-app,
#bookit-app .bookit-modal-container,
#bookit-app .bookit-modal-body{
	color:#4b3a41!important;
}
#bookit-app .bookit-modal-header h1,
#bookit-app .bookit-modal-header h2,
#bookit-app .bookit-modal-header h3,
#bookit-app .bookit-modal-header h4,
#bookit-app .bookit-modal-body h1,
#bookit-app .bookit-modal-body h2,
#bookit-app .bookit-modal-body h3,
#bookit-app .bookit-modal-body h4{
	color:#8f3f5d!important;
}
#bookit-app .bookit-modal-header .appointment-info,
#bookit-app .bookit-modal-header .appointment-info .text-bold,
#bookit-app .bookit-modal-header .appointment-info .text-uppercase{
	color:#4b3a41!important;
}
#bookit-app .bookit-modal-body .form-group label,
#bookit-app .bookit-modal-body label,
#bookit-app .bookit-modal-body .label{
	color:#9d5b73!important;
}
#bookit-app .bookit-modal-body input,
#bookit-app .bookit-modal-body textarea,
#bookit-app .bookit-modal-body select{
	color:#3f3438!important;
}
#bookit-app .bookit-modal-body input::placeholder,
#bookit-app .bookit-modal-body textarea::placeholder{
	color:#a88b96!important;
	opacity:1!important;
}
#bookit-app .bookit-modal-body .error-message,
#bookit-app .bookit-modal-body .ptv2-booking-error{
	color:#963f60!important;
}

/* Payment is recorded internally by Bookit, but collected only at the cabinet. */
#bookit-app .bookit-modal-footer .payment-method,
#bookit-app .payment-methods .step-payment{display:none!important}
#bookit-app .ptv2-cabinet-payment-note{box-sizing:border-box;margin:0;padding:11px 14px;border:1px solid #ead8df;border-radius:10px;background:#fff8fa;color:#6f4b59;font-size:14px;font-weight:750;line-height:1.4;text-align:left}
