/* Postcodecheck en bezorgzonetabel. Neemt lettertype en kleuren van het thema over. */
.pdm-postcode-check {
	margin: 1em 0;
	/* Op de productpagina staat de check in de flex-rij van de winkelwagenknop (net als het keuzeblok):
	   altijd een eigen volle regel, anders schuift hij naast de aantal-kiezer. */
	width: 100%;
	flex-basis: 100%;
	box-sizing: border-box;
}

.pdm-postcode-check__label {
	display: block;
	margin-bottom: 0.4em;
	font-weight: 600;
}

.pdm-postcode-check__row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
}

.pdm-postcode-check__input {
	flex: 0 1 9em;
	min-width: 7em;
	text-transform: uppercase;
}

.pdm-postcode-check__result {
	margin: 0.5em 0 0;
	min-height: 1.4em;
}

.pdm-postcode-check__result.is-ok {
	font-weight: 600;
}

.pdm-postcode-check__result.is-notice {
	color: #8a4b00;
}

.pdm-delivery-zones {
	width: 100%;
	border-collapse: collapse;
	margin: 1em 0;
}

.pdm-delivery-zones th,
.pdm-delivery-zones td {
	padding: 0.5em 0.75em;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	text-align: left;
}

.pdm-delivery-zones td.pdm-num,
.pdm-delivery-zones th.pdm-num {
	text-align: right;
	white-space: nowrap;
}

.pdm-delivery-zones__note {
	margin: 0.5em 0 1em;
}

/* Productpagina: een rustige regel onder de prijs met de laagste bezorgprijs; een klik klapt de postcodecheck uit. */
.pdm-postcode-teaser {
	margin: 0.25em 0 1em;
	width: 100%;
	flex-basis: 100%;
	font-size: 0.9em;
}

.pdm-postcode-teaser__summary {
	display: inline;
	cursor: pointer;
	list-style: none;
	opacity: 0.85;
}

.pdm-postcode-teaser__summary::-webkit-details-marker,
.pdm-postcode-teaser__summary::marker {
	display: none;
	content: "";
}

.pdm-postcode-teaser__link {
	text-decoration: underline;
	text-underline-offset: 2px;
	white-space: nowrap;
}

.pdm-postcode-teaser__link::after {
	content: "";
	display: inline-block;
	width: 0.4em;
	height: 0.4em;
	margin: 0 0 0.2em 0.45em;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg);
	transition: transform 0.15s ease;
}

.pdm-postcode-teaser[open] .pdm-postcode-teaser__link::after {
	margin-bottom: -0.05em;
	transform: rotate(-135deg);
}

.pdm-postcode-teaser .pdm-postcode-check {
	margin: 0.75em 0 0;
	max-width: 24em;
}

/* Label blijft voor schermlezers, de placeholder zegt het al. */
.pdm-postcode-teaser .pdm-postcode-check__label {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.pdm-postcode-teaser .pdm-postcode-check__row {
	flex-wrap: nowrap;
}

.pdm-postcode-teaser .pdm-postcode-check__input,
.pdm-postcode-teaser .pdm-postcode-check__button {
	box-sizing: border-box;
	height: 44px;
	min-height: 44px;
	margin: 0;
	border-radius: 8px;
	font-size: 1em;
	line-height: 1.2;
}

.pdm-postcode-teaser .pdm-postcode-check__input {
	flex: 1 1 auto;
	min-width: 0;
	max-width: 10em;
	padding: 0 0.85em;
	border: 1px solid #8e8e96;
	background: #fff;
}

.pdm-postcode-teaser .pdm-postcode-check__input:focus {
	outline: none;
	border-color: currentColor;
	box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.12);
}

.pdm-postcode-teaser .pdm-postcode-check__button {
	flex: 0 0 auto;
	padding: 0 1.1em;
	border: 1px solid currentColor;
	background: transparent;
	color: inherit;
	font-weight: 600;
	cursor: pointer;
}

.pdm-postcode-teaser .pdm-postcode-check__button:hover,
.pdm-postcode-teaser .pdm-postcode-check__button:focus-visible {
	background: rgba(0, 0, 0, 0.06);
	color: inherit;
}

.pdm-postcode-teaser .pdm-postcode-check__result {
	margin-top: 0.5em;
	font-size: 1em;
}

.pdm-postcode-teaser .pdm-postcode-check__result:empty {
	min-height: 0;
	margin: 0;
}

.pdm-postcode-teaser .pdm-postcode-check__result.is-ok {
	font-weight: 600;
}

/* Winkelmand: het veld staat in de tabel met totalen, dus compacter. */
.pdm-cart-postcode .pdm-postcode-check {
	margin: 0;
}

.pdm-cart-postcode .pdm-postcode-check__label {
	font-weight: normal;
	font-size: 0.9em;
}

/* Veld en knop naast elkaar, ook in de smalle kolom met totalen. */
.pdm-cart-postcode .pdm-postcode-check__row {
	flex-wrap: nowrap;
}

.pdm-cart-postcode .pdm-postcode-check__input {
	flex: 1 1 auto;
	width: auto;
	min-width: 0;
	max-width: 9em;
}

.pdm-cart-postcode .pdm-postcode-check__result:empty {
	min-height: 0;
}
