.ucsdp-closed-order-notice {
	margin: 0 0 18px;
	padding: 14px 16px;
	border: 1px solid rgba(var(--ucsdp-accent-rgb, 239, 125, 0), 0.35);
	border-left: 4px solid var(--ucsdp-accent, #ef7d00);
	border-radius: 6px;
	background: rgba(var(--ucsdp-accent-rgb, 239, 125, 0), 0.08);
}

.ucsdp-closed-order-notice p {
	margin: 0;
}

.ucsdp-closed-order-notice__time {
	margin-top: 6px !important;
}

.ucsdp-closed-order-notice--earliest-time {
	margin-bottom: 18px;
	padding: 10px 12px;
	border: 1px solid #e1e5ea;
	border-left: 3px solid rgba(var(--ucsdp-accent-rgb, 239, 125, 0), 0.45);
	border-radius: 5px;
	background: #fafafa;
	color: #667085;
}

.ucsdp-closed-order-notice--earliest-time .ucsdp-closed-order-notice__label {
	font-weight: 400;
}

.ucsdp-closed-order-notice--earliest-time .ucsdp-closed-order-notice__slot {
	color: #344054;
}

.ucsdp-preorder {
	--ucsdp-preorder-radius: 8px;
	--ucsdp-preorder-gap: 10px;
	--ucsdp-preorder-shadow: 0 18px 54px rgba(15, 23, 42, 0.24);
	--ucsdp-preorder-border: #e1e5ea;
	--ucsdp-preorder-text: #172033;
	--ucsdp-preorder-muted: #667085;
	--ucsdp-preorder-surface: #fff;
	--ucsdp-preorder-soft: rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.1);
	--ucsdp-preorder-focus-ring: rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.26);
	display: grid;
	gap: var(--ucsdp-preorder-gap);
	color: var(--ucsdp-preorder-text);
}

.ucsdp-preorder-field {
	margin-bottom: 24px;
}

.ucsdp-preorder__native-select {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	padding: 0;
	border: 0;
	opacity: 0;
	pointer-events: none;
}

body .woocommerce .ucsdp-preorder .ucsdp-preorder-choice,
.ucsdp-preorder .ucsdp-preorder-choice {
	display: grid;
	grid-template-columns: 18px 32px minmax(0, 1fr);
	align-items: center;
	gap: 12px;
	width: 100%;
	min-height: 72px;
	margin: 0;
	padding: 14px 16px;
	border: var(--ucsdp-preorder-choice-border-width, 1px) solid var(--ucsdp-preorder-choice-border-color, var(--ucsdp-preorder-border));
	border-radius: var(--ucsdp-preorder-radius);
	background: var(--ucsdp-preorder-surface);
	color: inherit;
	text-align: left;
	box-shadow: none;
	cursor: pointer;
}

body .woocommerce .ucsdp-preorder .ucsdp-preorder-choice:disabled,
.ucsdp-preorder .ucsdp-preorder-choice:disabled {
	cursor: not-allowed;
	opacity: 0.62;
}

body .woocommerce .ucsdp-preorder .ucsdp-preorder-slot:focus-visible,
body .woocommerce .ucsdp-preorder .ucsdp-preorder-date:focus-visible,
body .woocommerce .ucsdp-preorder .ucsdp-preorder-date-tab:focus-visible,
body .woocommerce .ucsdp-preorder .ucsdp-preorder-calendar__nav:focus-visible,
body .woocommerce .ucsdp-preorder .ucsdp-preorder-modal__close:focus-visible,
body .woocommerce .ucsdp-preorder .ucsdp-preorder-modal__confirm:focus-visible,
.ucsdp-preorder .ucsdp-preorder-slot:focus-visible,
.ucsdp-preorder .ucsdp-preorder-date:focus-visible,
.ucsdp-preorder .ucsdp-preorder-date-tab:focus-visible,
.ucsdp-preorder .ucsdp-preorder-calendar__nav:focus-visible,
.ucsdp-preorder .ucsdp-preorder-modal__close:focus-visible,
.ucsdp-preorder .ucsdp-preorder-modal__confirm:focus-visible {
	outline: 2px solid var(--ucsdp-accent, #ef7d00);
	outline-offset: 3px;
	box-shadow: 0 0 0 3px var(--ucsdp-preorder-focus-ring);
}

body .woocommerce .ucsdp-preorder .ucsdp-preorder-slot:focus:not(:focus-visible),
body .woocommerce .ucsdp-preorder .ucsdp-preorder-date:focus:not(:focus-visible),
body .woocommerce .ucsdp-preorder .ucsdp-preorder-date-tab:focus:not(:focus-visible),
body .woocommerce .ucsdp-preorder .ucsdp-preorder-calendar__nav:focus:not(:focus-visible),
body .woocommerce .ucsdp-preorder .ucsdp-preorder-modal__close:focus:not(:focus-visible),
body .woocommerce .ucsdp-preorder .ucsdp-preorder-modal__confirm:focus:not(:focus-visible),
.ucsdp-preorder .ucsdp-preorder-slot:focus:not(:focus-visible),
.ucsdp-preorder .ucsdp-preorder-date:focus:not(:focus-visible),
.ucsdp-preorder .ucsdp-preorder-date-tab:focus:not(:focus-visible),
.ucsdp-preorder .ucsdp-preorder-calendar__nav:focus:not(:focus-visible),
.ucsdp-preorder .ucsdp-preorder-modal__close:focus:not(:focus-visible),
.ucsdp-preorder .ucsdp-preorder-modal__confirm:focus:not(:focus-visible) {
	outline: 0;
}

.ucsdp-preorder-slot:focus-visible,
.ucsdp-preorder-date:focus-visible,
.ucsdp-preorder-date-tab:focus-visible,
.ucsdp-preorder-calendar__nav:focus-visible,
.ucsdp-preorder-modal__close:focus-visible,
.ucsdp-preorder-modal__confirm:focus-visible {
	outline: 2px solid var(--ucsdp-accent, #ef7d00);
	outline-offset: 3px;
	box-shadow: 0 0 0 3px var(--ucsdp-preorder-focus-ring);
}

body .woocommerce .ucsdp-preorder .ucsdp-preorder-choice:focus,
body .woocommerce .ucsdp-preorder .ucsdp-preorder-choice:focus-visible,
.ucsdp-preorder .ucsdp-preorder-choice:focus,
.ucsdp-preorder .ucsdp-preorder-choice:focus-visible {
	outline: 0;
	box-shadow: inset 0 0 0 2px var(--ucsdp-accent, #ef7d00);
}

body .woocommerce .ucsdp-preorder .ucsdp-preorder-choice.is-selected,
.ucsdp-preorder .ucsdp-preorder-choice.is-selected {
	border-color: var(--ucsdp-preorder-choice-selected-border-color, var(--ucsdp-accent, #ef7d00));
	background: rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.06);
	box-shadow: 0 0 0 1px rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.16);
}

body .woocommerce .ucsdp-preorder .ucsdp-preorder-choice.is-selected:focus,
body .woocommerce .ucsdp-preorder .ucsdp-preorder-choice.is-selected:focus-visible,
.ucsdp-preorder .ucsdp-preorder-choice.is-selected:focus,
.ucsdp-preorder .ucsdp-preorder-choice.is-selected:focus-visible {
	box-shadow:
		0 0 0 1px rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.16),
		inset 0 0 0 2px var(--ucsdp-accent, #ef7d00);
}

body .woocommerce .ucsdp-preorder .ucsdp-preorder-choice__radio,
.ucsdp-preorder .ucsdp-preorder-choice__radio {
	display: block;
	width: 16px;
	height: 16px;
	border: 2px solid var(--ucsdp-preorder-radio-border-color, #8c95a3);
	border-radius: 50%;
	box-sizing: border-box;
}

body .woocommerce .ucsdp-preorder .ucsdp-preorder-choice.is-selected .ucsdp-preorder-choice__radio,
.ucsdp-preorder .ucsdp-preorder-choice.is-selected .ucsdp-preorder-choice__radio {
	border: 5px solid var(--ucsdp-accent, #ef7d00);
}

.ucsdp-preorder-choice__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	color: var(--ucsdp-accent, #ef7d00);
}

.ucsdp-preorder-choice__icon svg,
.ucsdp-preorder-modal__close svg {
	display: block;
	width: 22px;
	height: 22px;
	fill: currentColor;
}

.ucsdp-preorder-choice__body {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.ucsdp-preorder-choice__title {
	display: block;
	color: var(--ucsdp-preorder-text);
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.ucsdp-preorder-choice__text {
	display: block;
	color: var(--ucsdp-preorder-muted);
	font-size: 0.82rem;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.ucsdp-preorder-modal[aria-hidden="true"] {
	display: none;
}

.ucsdp-preorder-modal[aria-hidden="false"] {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: grid;
	place-items: center;
	padding: 24px;
}

.ucsdp-preorder-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(10, 14, 22, 0.68);
}

.ucsdp-preorder-modal__panel {
	position: relative;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	width: min(920px, 100%);
	max-height: min(760px, calc(100vh - 48px));
	border-radius: var(--ucsdp-preorder-radius);
	background: var(--ucsdp-preorder-surface);
	box-shadow: var(--ucsdp-preorder-shadow);
	overflow: hidden;
}

.ucsdp-preorder--compact_modal .ucsdp-preorder-modal__panel {
	width: min(640px, 100%);
}

.ucsdp-preorder-modal__header,
.ucsdp-preorder-modal__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 18px 24px;
	border-bottom: 1px solid var(--ucsdp-preorder-border);
}

.ucsdp-preorder-modal__footer {
	border-top: 1px solid var(--ucsdp-preorder-border);
	border-bottom: 0;
	background: #fbfcfd;
}

.ucsdp-preorder-modal__title {
	margin: 0;
	color: var(--ucsdp-preorder-text);
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.3;
}

.ucsdp-preorder-modal__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #344054;
	cursor: pointer;
}

.ucsdp-preorder-modal__content {
	display: grid;
	grid-template-columns: minmax(260px, 0.9fr) minmax(300px, 1.1fr);
	gap: 24px;
	min-height: 0;
	padding: 24px;
	overflow: auto;
}

.ucsdp-preorder--compact_modal .ucsdp-preorder-modal__content,
.ucsdp-preorder--single-date .ucsdp-preorder-modal__content {
	grid-template-columns: 1fr;
}

.ucsdp-preorder--compact_modal .ucsdp-preorder-modal__content {
	grid-template-rows: auto minmax(0, 1fr);
	align-content: start;
}

.ucsdp-preorder--compact_modal .ucsdp-preorder-date-tabs {
	padding-bottom: 16px;
	border-bottom: 1px solid var(--ucsdp-preorder-border);
}

.ucsdp-preorder--compact_modal .ucsdp-preorder-times {
	padding-top: 2px;
}

.ucsdp-preorder-calendar__heading {
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr) 36px;
	align-items: center;
	gap: 8px;
	margin-bottom: 16px;
	color: var(--ucsdp-preorder-text);
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
}

.ucsdp-preorder-calendar__heading span {
	grid-column: 2;
	min-width: 0;
}

.ucsdp-preorder-calendar__heading .ucsdp-preorder-calendar__nav:first-child {
	grid-column: 1;
}

.ucsdp-preorder-calendar__heading .ucsdp-preorder-calendar__nav:last-child {
	grid-column: 3;
}

.ucsdp-preorder-calendar__nav {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	margin: 0;
	padding: 0;
	border: 1px solid var(--ucsdp-preorder-border);
	border-radius: 50%;
	background: #fff;
	color: var(--ucsdp-preorder-text);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
}

.ucsdp-preorder-calendar__nav:disabled {
	color: #aeb6c2;
	cursor: not-allowed;
	opacity: 0.5;
}

.ucsdp-preorder-calendar {
	align-self: start;
}

.ucsdp-preorder-calendar__grid {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 8px;
}

.ucsdp-preorder-calendar__weekday {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 24px;
	color: var(--ucsdp-preorder-muted);
	font-size: 0.72rem;
	font-weight: 700;
	line-height: 1;
}

.ucsdp-preorder-date,
.ucsdp-preorder-date-tab,
.ucsdp-preorder-slot {
	position: relative;
	border: 1px solid var(--ucsdp-preorder-border);
	border-radius: var(--ucsdp-preorder-radius);
	background: #fff;
	color: var(--ucsdp-preorder-text);
	box-shadow: none;
	cursor: pointer;
}

.ucsdp-preorder-date {
	display: grid;
	place-items: center;
	gap: 4px;
	min-height: 48px;
	padding: 6px;
	text-align: center;
}

.ucsdp-preorder-date strong {
	font-size: 1.12rem;
	line-height: 1.1;
}

.ucsdp-preorder-date span {
	color: var(--ucsdp-preorder-muted);
	font-size: 0.72rem;
	line-height: 1.15;
	font-weight: 400;
}

.ucsdp-preorder-date.is-disabled {
	background: #f8fafc;
	color: #aeb6c2;
	cursor: not-allowed;
	opacity: 0.45;
}

.ucsdp-preorder-date.is-outside-month {
	opacity: 0.28;
}

.ucsdp-preorder-date.is-available {
	border-color: rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.42);
	color: var(--ucsdp-accent-strong, #d56900);
	font-weight: 700;
}

.ucsdp-preorder-date[aria-pressed="true"],
.ucsdp-preorder-date-tab[aria-pressed="true"],
.ucsdp-preorder-slot[aria-pressed="true"] {
	border-color: var(--ucsdp-accent, #ef7d00);
	background: var(--ucsdp-preorder-soft);
	color: var(--ucsdp-accent-strong, #d56900);
	box-shadow: 0 0 0 1px rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.14);
}

body .woocommerce .ucsdp-preorder .ucsdp-preorder-date[aria-pressed="true"]:focus-visible,
body .woocommerce .ucsdp-preorder .ucsdp-preorder-date-tab[aria-pressed="true"]:focus-visible,
body .woocommerce .ucsdp-preorder .ucsdp-preorder-slot[aria-pressed="true"]:focus-visible,
.ucsdp-preorder .ucsdp-preorder-date[aria-pressed="true"]:focus-visible,
.ucsdp-preorder .ucsdp-preorder-date-tab[aria-pressed="true"]:focus-visible,
.ucsdp-preorder .ucsdp-preorder-slot[aria-pressed="true"]:focus-visible {
	outline-color: var(--ucsdp-accent, #ef7d00);
	box-shadow:
		0 0 0 1px rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.18),
		0 0 0 4px var(--ucsdp-preorder-focus-ring);
}

.ucsdp-preorder-date-tabs {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
	gap: 10px;
	align-items: start;
}

.ucsdp-preorder-date-tab {
	display: grid;
	gap: 4px;
	min-height: 58px;
	padding: 10px 12px;
	text-align: center;
}

.ucsdp-preorder-date-tab strong,
.ucsdp-preorder-date-tab span {
	display: block;
	line-height: 1.2;
}

.ucsdp-preorder-date-tab span {
	color: var(--ucsdp-preorder-muted);
	font-size: 0.82rem;
}

.ucsdp-preorder--compact_modal .ucsdp-preorder-date-tab {
	align-content: center;
	min-height: 66px;
	padding: 10px 12px;
}

.ucsdp-preorder-times {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	align-content: start;
	gap: 10px;
	min-width: 0;
}

.ucsdp-preorder-slot {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	place-items: center;
	gap: 5px;
	min-height: 58px;
	min-width: 0;
	padding: 10px 12px;
	text-align: center;
	overflow: visible;
}

.ucsdp-preorder-slot.has-low-capacity {
	background: #f4f0ec;
}

.ucsdp-preorder-slot.has-full-capacity[aria-disabled="true"] {
	background: #eef1f5;
	color: #aeb6c2;
	cursor: not-allowed;
}

.ucsdp-preorder-slot[data-capacity-tooltip]::after {
	content: attr(data-capacity-tooltip);
	position: absolute;
	z-index: 4;
	left: 50%;
	bottom: calc(100% + 10px);
	width: max-content;
	max-width: min(240px, calc(100vw - 32px));
	padding: 10px 14px;
	border-radius: 8px;
	background: #20242c;
	color: #fff !important;
	font-size: 0.82rem;
	font-weight: 600;
	line-height: 1.35;
	text-align: center;
	white-space: normal;
	transform: translate(-50%, 4px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	box-shadow: 0 6px 18px rgba(32, 36, 44, 0.2);
	transition: opacity 120ms ease, transform 120ms ease, visibility 120ms ease;
}

/* Use a real child instead of relying on a generated pseudo-element: this keeps
 * the tooltip in the active grid item's stacking context across themes. */
.ucsdp-preorder-slot__tooltip {
	position: absolute;
	z-index: 100001;
	left: 50%;
	bottom: calc(100% + 10px);
	display: block;
	width: max-content;
	max-width: min(240px, calc(100vw - 32px));
	padding: 10px 14px;
	border-radius: 8px;
	background: #20242c;
	color: #fff !important;
	font-size: 0.82rem;
	font-weight: 600;
	line-height: 1.35;
	text-align: center;
	white-space: normal;
	transform: translate(-50%, 4px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	box-shadow: 0 6px 18px rgba(32, 36, 44, 0.2);
	transition: opacity 120ms ease, transform 120ms ease, visibility 120ms ease;
}

.ucsdp-preorder-slot__tooltip::before {
	content: '';
	position: absolute;
	left: 50%;
	top: 100%;
	border: 7px solid transparent;
	border-top-color: #20242c;
	transform: translateX(-50%);
}

.ucsdp-preorder-slot[data-capacity-tooltip]:hover .ucsdp-preorder-slot__tooltip,
.ucsdp-preorder-slot[data-capacity-tooltip]:focus-visible .ucsdp-preorder-slot__tooltip {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%, 0);
}

.ucsdp-preorder-slot[data-capacity-tooltip]::before {
	content: '';
	position: absolute;
	z-index: 4;
	left: 50%;
	bottom: calc(100% + 3px);
	border: 7px solid transparent;
	border-top-color: #20242c;
	transform: translate(-50%, 4px);
	opacity: 0;
	visibility: hidden;
	transition: opacity 120ms ease, transform 120ms ease, visibility 120ms ease;
}

.ucsdp-preorder-slot[data-capacity-tooltip]:hover::before,
.ucsdp-preorder-slot[data-capacity-tooltip]:hover::after,
.ucsdp-preorder-slot[data-capacity-tooltip]:focus-visible::before,
.ucsdp-preorder-slot[data-capacity-tooltip]:focus-visible::after {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%, 0);
}

/* Grid items paint in document order; raise the active slot above its neighbours
 * so the tooltip is not covered by the next time button. */
.ucsdp-preorder-slot[data-capacity-tooltip]:hover,
.ucsdp-preorder-slot[data-capacity-tooltip]:focus-visible {
	z-index: 20;
}

/* Keep the first grid row visible inside the scrollable picker content. */
.ucsdp-preorder-slot--tooltip-below[data-capacity-tooltip]::after {
	top: calc(100% + 10px);
	bottom: auto;
	transform: translate(-50%, -4px);
}

.ucsdp-preorder-slot--tooltip-below .ucsdp-preorder-slot__tooltip {
	top: calc(100% + 10px);
	bottom: auto;
	transform: translate(-50%, -4px);
}

.ucsdp-preorder-slot--tooltip-below .ucsdp-preorder-slot__tooltip::before {
	top: auto;
	bottom: 100%;
	border-top-color: transparent;
	border-bottom-color: #20242c;
}

.ucsdp-preorder-slot--tooltip-below[data-capacity-tooltip]:hover .ucsdp-preorder-slot__tooltip,
.ucsdp-preorder-slot--tooltip-below[data-capacity-tooltip]:focus-visible .ucsdp-preorder-slot__tooltip {
	transform: translate(-50%, 0);
}

.ucsdp-preorder-slot--tooltip-below[data-capacity-tooltip]::before {
	top: calc(100% + 3px);
	bottom: auto;
	border-top-color: transparent;
	border-bottom-color: #20242c;
	transform: translate(-50%, -4px);
}

.ucsdp-preorder-slot--tooltip-below[data-capacity-tooltip]:hover::before,
.ucsdp-preorder-slot--tooltip-below[data-capacity-tooltip]:hover::after,
.ucsdp-preorder-slot--tooltip-below[data-capacity-tooltip]:focus-visible::before,
.ucsdp-preorder-slot--tooltip-below[data-capacity-tooltip]:focus-visible::after {
	transform: translate(-50%, 0);
}

.ucsdp-preorder-slot strong {
	display: block;
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1;
}

.ucsdp-preorder-slot span {
	min-width: 0;
	max-width: 100%;
	color: var(--ucsdp-preorder-muted);
	font-size: 0.78rem;
	line-height: 1.2;
	white-space: normal;
	overflow-wrap: anywhere;
}

.ucsdp-preorder-times__empty {
	margin: 0;
	color: var(--ucsdp-preorder-muted);
}

.ucsdp-preorder-modal__hint {
	color: var(--ucsdp-preorder-muted);
	font-size: 0.84rem;
	line-height: 1.35;
}

.ucsdp-preorder-modal__confirm {
	min-width: 150px;
	min-height: 44px;
	margin: 0;
	padding: 10px 18px;
	border: 1px solid var(--ucsdp-accent-strong, #d56900);
	border-radius: 6px;
	background: var(--ucsdp-accent, #ef7d00);
	color: #fff;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
}

.ucsdp-preorder-modal__confirm:disabled {
	cursor: not-allowed;
	opacity: 0.58;
}

.ucsdp-preorder-modal-open {
	overflow: hidden;
}

@media (max-width: 782px) {
	.ucsdp-preorder-modal[aria-hidden="false"] {
		align-items: stretch;
		padding: 10px;
	}

	.ucsdp-preorder-modal__panel {
		width: 100%;
		max-height: calc(100vh - 20px);
	}

	.ucsdp-preorder-modal__header {
		position: sticky;
		top: 0;
		z-index: 2;
		padding: 14px 16px;
		background: #fff;
	}

	.ucsdp-preorder-modal__content {
		grid-template-columns: 1fr;
		gap: 16px;
		padding: 16px;
	}

	.ucsdp-preorder-modal__footer {
		position: sticky;
		bottom: 0;
		display: grid;
		grid-template-columns: 1fr;
		padding: 12px 16px;
	}

	.ucsdp-preorder-modal__confirm {
		width: 100%;
	}

	.ucsdp-preorder-times {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 420px) {
	.ucsdp-preorder-choice {
		grid-template-columns: 18px 28px minmax(0, 1fr);
		padding: 12px;
	}

	.ucsdp-preorder-times {
		grid-template-columns: 1fr 1fr;
	}

	.ucsdp-preorder-slot {
		min-height: 54px;
		padding: 9px 8px;
	}
}

/* Day mode — date input trigger */
.ucsdp-preorder-date-trigger {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 10px 14px;
	border: 1px solid var(--ucsdp-preorder-border);
	border-radius: var(--ucsdp-preorder-radius);
	background: var(--ucsdp-preorder-surface);
	cursor: pointer;
	box-sizing: border-box;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.ucsdp-preorder-date-trigger:hover:not(.is-disabled) {
	border-color: var(--ucsdp-accent, #ef7d00);
}

.ucsdp-preorder-date-trigger:focus-visible {
	outline: 2px solid var(--ucsdp-accent, #ef7d00);
	outline-offset: 2px;
	box-shadow: 0 0 0 3px var(--ucsdp-preorder-focus-ring);
}

.ucsdp-preorder-date-trigger.has-value {
	border-color: var(--ucsdp-accent, #ef7d00);
	background: rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.04);
}

.ucsdp-preorder-date-trigger.is-disabled {
	opacity: 0.55;
	cursor: not-allowed;
}

.ucsdp-preorder-date-trigger__icon {
	display: inline-flex;
	align-items: center;
	color: var(--ucsdp-accent, #ef7d00);
	flex-shrink: 0;
}

.ucsdp-preorder-date-trigger__icon svg {
	display: block;
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.ucsdp-preorder-date-input {
	flex: 1;
	min-width: 0;
	border: 0;
	background: transparent;
	color: var(--ucsdp-preorder-text);
	font-size: 0.95rem;
	cursor: pointer;
	outline: none;
	pointer-events: none;
}

.ucsdp-preorder-date-input::placeholder {
	color: var(--ucsdp-preorder-muted);
}

/* Day mode — calendar fills full modal width, no times column */
.ucsdp-preorder--day-mode .ucsdp-preorder-modal__content {
	grid-template-columns: 1fr;
}

/* Fulfillment windows info block (below the "later" choice button) */
.ucsdp-preorder-windows {
	padding: 12px 16px;
	border: 1px solid var(--ucsdp-preorder-border);
	border-radius: var(--ucsdp-preorder-radius);
	background: rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.04);
}

.ucsdp-preorder-windows__title {
	margin: 0 0 8px;
	color: var(--ucsdp-preorder-muted);
	font-size: 0.8rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.ucsdp-preorder-windows__single {
	margin: 0;
	color: var(--ucsdp-preorder-text);
	font-size: 0.9rem;
	font-weight: 600;
}

.ucsdp-preorder-windows__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 6px;
}

.ucsdp-preorder-windows__item {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 8px;
	color: var(--ucsdp-preorder-text);
	font-size: 0.9rem;
	font-weight: 600;
}

.ucsdp-preorder-windows__desc {
	color: var(--ucsdp-preorder-muted);
	font-size: 0.8rem;
	font-weight: 400;
}

/* Thank you page pre-order notice */
.woocommerce .ucsdp-thankyou-preorder-notice {
	align-items: center;
	background: rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.08);
	border: 1px solid rgba(var(--ucsdp-accent-rgb, 239,125,0), 0.32);
	border-radius: 8px;
	box-sizing: border-box;
	color: #24301f;
	display: flex;
	gap: 12px;
	margin: 12px 0 18px;
	padding: 14px 16px;
	width: 100%;
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}
.woocommerce .ucsdp-thankyou-preorder-notice__icon {
	align-items: center;
	color: var(--ucsdp-accent, #ef7d00);
	display: inline-flex;
	flex: 0 0 30px;
	height: 30px;
	justify-content: center;
	width: 30px;
}
.woocommerce .ucsdp-thankyou-preorder-notice__icon svg {
	display: block;
	fill: currentColor;
	height: 30px;
	width: 30px;
}
.woocommerce .ucsdp-thankyou-preorder-notice__body {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.woocommerce .ucsdp-thankyou-preorder-notice__title {
	color: var(--ucsdp-accent-strong, #d56900);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.25;
}
.woocommerce .ucsdp-thankyou-preorder-notice__text {
	color: #4f5d48;
	font-size: 13px;
	line-height: 1.35;
}
.woocommerce .ucsdp-thankyou-preorder-notice__text strong {
	color: var(--ucsdp-accent-strong, #d56900);
}

.woocommerce .ucsdp-thankyou-preorder-notice--account-order-details {
	margin: 18px 0 16px;
}
.ucsdp-preorder-capacity-label {
	display: block;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	font-size: 0.78em;
	font-weight: normal;
	line-height: 1.3;
	overflow-wrap: anywhere;
}
.ucsdp-preorder-slot .ucsdp-preorder-capacity-label,
.ucsdp-preorder-date .ucsdp-preorder-capacity-label,
.ucsdp-preorder-date-tab .ucsdp-preorder-capacity-label { white-space: normal; }
.ucsdp-preorder-slot[aria-disabled="true"],
.ucsdp-preorder-date-tab:disabled,
.ucsdp-preorder-choice:disabled { opacity: 0.55; cursor: not-allowed; }
.ucsdp-preorder-slot[aria-disabled="true"] strong,
.ucsdp-preorder-date:disabled strong,
.ucsdp-preorder-date-tab:disabled strong { text-decoration: line-through; }
.ucsdp-preorder-capacity [role="status"]:empty { display: none; }

/* Do not fade the tooltip together with a disabled slot. */
.ucsdp-preorder-slot.has-full-capacity[aria-disabled="true"] {
	opacity: 1;
}
.ucsdp-preorder-slot.has-full-capacity[aria-disabled="true"] strong {
	color: #aeb6c2;
}
