.ui-autocomplete.rcs-comuna-menu {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.15);
	border-radius: 10px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
	padding: 8px 0;
	max-height: 260px;
	overflow-y: auto;
	z-index: 999999;
	box-sizing: border-box;
}

.ui-helper-hidden-accessible {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.ui-autocomplete.rcs-comuna-menu .ui-menu-item-wrapper {
	font-size: 0.8em; /* ~20% smaller */
	line-height: 1.25;
	padding: 12px 16px; /* more separation */
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.ui-autocomplete.rcs-comuna-menu .rcs-comuna-option {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	width: 100%;
}

.ui-autocomplete.rcs-comuna-menu .rcs-comuna-option-name {
	font-size: 1em;
	font-weight: 600;
	color: #111827;
}

.ui-autocomplete.rcs-comuna-menu .rcs-comuna-option-region {
	font-size: 0.78em;
	font-weight: 500;
	color: #6b7280;
	white-space: nowrap;
	text-align: right;
}

.ui-autocomplete.rcs-comuna-menu .ui-menu-item:last-child .ui-menu-item-wrapper {
	border-bottom: 0;
}

.ui-autocomplete.rcs-comuna-menu .ui-menu-item-wrapper.ui-state-active {
	background: rgba(0, 0, 0, 0.06);
	border: 0;
	margin: 0;
}

#red-cultural-checkout-payment {
	position: relative;
}

#red-cultural-checkout-place-order.rcs-button-disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

.rcs-place-order-guard {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 86px;
	height: 84px;
	z-index: 3;
	cursor: not-allowed;
}

.rcs-comuna-shake {
	animation: rcs-comuna-shake 0.38s ease-in-out;
	border-color: #b91c1c !important;
	box-shadow: 0 0 0 2px rgba(185, 28, 28, 0.12) !important;
}

.rcs-comuna-invalid {
	border-color: #b91c1c !important;
	box-shadow: 0 0 0 2px rgba(185, 28, 28, 0.12) !important;
}

.rcs-comuna-error {
	display: none;
	margin-top: 8px;
	font-size: 12px;
	font-weight: 700;
	color: #b91c1c;
}

.rcs-field-warning {
	margin-top: 8px;
	font-size: 12px;
	font-weight: 700;
	color: #b91c1c;
}

.rcs-shipping-missing {
	color: #7f1d1d;
	font-size: 13px;
	font-weight: 500;
}

@keyframes rcs-comuna-shake {
	0% { transform: translateX(0); }
	20% { transform: translateX(-6px); }
	40% { transform: translateX(6px); }
	60% { transform: translateX(-5px); }
	80% { transform: translateX(5px); }
	100% { transform: translateX(0); }
}
