/* ==========================================================================
   bpi-gf-datepicker.css
   Standalone override for the Gravity Forms 3.0 (WhatSock) datepicker,
   scoped for form #24 (Legacy Markup). Loaded via functions.php at
   priority 9999 so it always applies last in the cascade.
   ========================================================================== */

/* --- Icon positioned inside the input, right side — fixed regardless of
   whether the calendar is open or closed --- */
.ginput_container_date {
	position: relative !important;
}

.ginput_container_date input.datepicker {
	padding-right: 42px !important;
	box-sizing: border-box !important;
	width: 100% !important;
}

#gform_wrapper_24 .ginput_container_date button.gform-datepicker-toggle {
	position: absolute !important;
	top: 8px !important;
	right: 6px !important;
	transform: none !important;
	margin: 0 !important;
	width: 30px !important;
	height: 30px !important;
	min-width: 30px !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	z-index: 2 !important;
}

#gform_wrapper_24 .ginput_container_date button.gform-datepicker-toggle:hover {
	background: transparent !important;
}

button.gform-datepicker-toggle .dashicons-calendar-alt {
	font-family: dashicons !important;
	font-size: 18px !important;
	width: 18px !important;
	height: 18px !important;
	line-height: 1 !important;
	color: #15426d !important;
	speak: none !important;
}

/* --- Force the calendar to float as a detached overlay so it never
   pushes the icon or input layout around when opened --- */
.ginput_container_date [role="application"],
[role="application"]:has(table.calendar) {
	position: absolute !important;
	top: 100% !important;
	left: 0 !important;
	margin-top: 4px !important;
	z-index: 9999 !important;
}

/* --- Calendar popup shell --- */
table.calendar,
[role="application"] table.calendar {
	width: 280px !important;
	max-width: 100% !important;
	border-collapse: collapse !important;
	background: #ffffff !important;
	border: 1px solid #d7dde3 !important;
	border-radius: 10px !important;
	box-shadow: 0 12px 36px rgba(0, 0, 0, 0.16) !important;
	font-family: 'Mulish', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
	font-size: 13px !important;
	color: #1e2d3d !important;
}

table.calendar span[hidden] {
	display: none !important;
}

/* --- Year/Month header row — white background, dark text --- */
table.calendar tr.yearSelector,
table.calendar tr.monthSelector {
	background-color: #ffffff !important;
	height: 40px !important;
	border-bottom: 1px solid #e5e9ee !important;
}

table.calendar tr.yearSelector td,
table.calendar tr.monthSelector td {
	background: transparent !important;
	border: none !important;
	height: 40px !important;
}

table.calendar td.year,
table.calendar td.month {
	text-align: center !important;
	padding: 0 4px !important;
	vertical-align: middle !important;
}

table.calendar td.nav.btn {
	display: table-cell !important;
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	max-width: 34px !important;
	max-height: 34px !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	border: none !important;
	border-radius: 50% !important;
	color: #1e2d3d !important;
	text-align: center !important;
	vertical-align: middle !important;
	cursor: pointer !important;
	font-size: 15px !important;
	line-height: 34px !important;
	box-shadow: none !important;
	text-decoration: none !important;
	overflow: hidden !important;
}

table.calendar td.nav.btn:hover {
	background-color: #e6effe !important;
}

table.calendar td.nav.btn span {
	color: #1e2d3d !important;
	background: none !important;
}

table.calendar select.nav.current {
	background: transparent !important;
	border: none !important;
	color: #1e2d3d !important;
	font-weight: 700 !important;
	font-size: 13.5px !important;
	text-align: center !important;
	text-align-last: center !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	cursor: pointer !important;
	padding: 2px 4px !important;
	margin: 0 !important;
	border-radius: 4px !important;
	box-shadow: none !important;
	display: inline-block !important;
	width: auto !important;
	height: auto !important;
}

table.calendar select.nav.current option {
	color: #1e2d3d !important;
	background: #ffffff !important;
}

/* --- Weekday header row --- */
table.calendar th.week {
	padding: 10px 0 6px !important;
	font-weight: 700 !important;
	font-size: 10.5px !important;
	letter-spacing: 0.5px !important;
	text-transform: uppercase !important;
	color: #6b7a8a !important;
	background: #fafbfc !important;
	border: none !important;
}

/* --- Day cells --- */
table.calendar td.day {
	width: 36px !important;
	height: 36px !important;
	text-align: center !important;
	vertical-align: middle !important;
	cursor: pointer !important;
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
}

table.calendar td.day span {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 30px !important;
	height: 30px !important;
	border-radius: 50% !important;
	color: #1e2d3d !important;
	background: transparent !important;
}

table.calendar td.day:hover span {
	background-color: #e6effe !important;
}

table.calendar td.day.dayToday span {
	font-weight: 700 !important;
	color: #15426d !important;
	box-shadow: inset 0 0 0 1.5px #15426d !important;
}

table.calendar td.day.selected span {
	background-color: #15426d !important;
	color: #ffffff !important;
	font-weight: 700 !important;
}

table.calendar td.empty {
	background: transparent !important;
	border: none !important;
}

/* --- Hide the "Press F1 for help" accessibility hint text --- */
.monthMessage {
	display: none !important;
}