/* Newsletter presentation only; TNP retains form validation and lifecycle actions. */
.e-meniu-newsletter-card,
.e-meniu-newsletter-slidein,
.e-meniu-newsletter-page,
.e-meniu-newsletter-guide {
	min-width: 0;
	color: var(--wp--preset--color--text);
	font-family: var(--wp--preset--font-family--body);
	overflow-wrap: anywhere;
}

.e-meniu-newsletter-card {
	display: grid;
	gap: var(--wp--preset--spacing--lg);
	align-items: center;
	width: 100%;
	margin-block-start: var(--wp--preset--spacing--2-xl);
	border: 1px solid var(--wp--preset--color--border-subtle);
	border-radius: var(--wp--custom--radius--large);
	background: var(--wp--preset--color--surface-soft);
	padding: clamp(1.25rem, 4vw, 2.25rem);
}

/* Preserve the original editorial wrapper spacing when no card is rendered. */
body.e-meniu-recipe-single .e-meniu-recipe:has(> .e-meniu-newsletter-card) {
	padding-block-end: 3rem;
}

body.e-meniu-recipe-single .e-meniu-recipe > .e-meniu-newsletter-card {
	/* The Related link's 44px target contributes to the visible text gap. */
	margin-block-start: 1.5rem;
	padding-block: 1.25rem;
}

.e-meniu-newsletter-copy,
.e-meniu-newsletter-form,
.e-meniu-newsletter-page-content,
.e-meniu-newsletter-guide-content,
.e-meniu-newsletter-native-state {
	min-width: 0;
}

.e-meniu-newsletter-copy {
	display: grid;
	gap: var(--wp--preset--spacing--xs);
}

.e-meniu-newsletter-copy h2,
.e-meniu-newsletter-copy p {
	margin: 0;
}

.e-meniu-newsletter-copy h2 {
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--h3);
	line-height: 1.15;
}

.e-meniu-newsletter-copy p {
	color: var(--wp--preset--color--text-muted);
}

.e-meniu-newsletter-form .tnp-subscription,
.e-meniu-newsletter-page :is(.tnp-subscription, .tnp-profile, .tnp-unsubscribe, .tnp-reactivate) {
	width: 100%;
	max-width: none;
	min-width: 0;
	margin: 0;
	font-size: inherit;
}

.e-meniu-newsletter-form .tnp-subscription form,
.e-meniu-newsletter-page :is(.tnp-subscription, .tnp-profile) form,
.e-meniu-newsletter-page form:is(.tnp-subscription, .tnp-profile) {
	display: grid;
	gap: var(--wp--preset--spacing--md);
	min-width: 0;
	margin: 0;
	text-align: left;
}

.e-meniu-newsletter-form .tnp-subscription form[hidden] {
	display: none !important;
}

.e-meniu-newsletter-form .tnp-field,
.e-meniu-newsletter-page :is(.tnp-subscription, .tnp-profile) .tnp-field {
	clear: none;
	min-width: 0;
	margin: 0;
	padding: 0;
}

.e-meniu-newsletter-form .tnp-subscription label,
.e-meniu-newsletter-page :is(.tnp-subscription, .tnp-profile) label {
	display: block;
	margin-block: 0 var(--wp--preset--spacing--xs);
	padding: 0;
	color: var(--wp--preset--color--text);
	font: inherit;
	font-weight: 650;
	line-height: 1.4;
}

.e-meniu-newsletter-form .tnp-subscription input[type="email"],
.e-meniu-newsletter-page :is(.tnp-subscription, .tnp-profile) :is(input[type="email"], input[type="text"], select, textarea) {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	height: auto;
	min-height: var(--wp--custom--interactive--target-min);
	border: 1px solid var(--wp--preset--color--border-strong);
	border-radius: var(--wp--custom--radius--small);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--text);
	padding: 0.7rem 0.875rem;
	font: inherit;
	font-size: max(1rem, var(--wp--preset--font-size--body));
	line-height: 1.4;
}

.e-meniu-newsletter-form .tnp-subscription .tnp-submit,
.e-meniu-newsletter-page :is(.tnp-subscription, .tnp-profile, .tnp-unsubscribe, .tnp-reactivate, .tnp-button-form) .tnp-submit {
	display: inline-flex;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	height: auto;
	min-height: var(--wp--custom--interactive--target-min);
	align-items: center;
	justify-content: center;
	border: 1px solid var(--wp--preset--color--olive);
	border-radius: var(--wp--custom--radius--pill);
	background: var(--wp--preset--color--olive);
	color: var(--wp--preset--color--surface);
	padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--lg);
	font: inherit;
	font-weight: 700;
	line-height: 1.4;
	text-transform: none;
	white-space: normal;
	cursor: pointer;
}

.e-meniu-newsletter-form .tnp-submit:disabled,
.e-meniu-newsletter-page .tnp-submit:disabled {
	opacity: 0.65;
	cursor: wait;
}

.e-meniu-newsletter-feedback {
	margin-block: var(--wp--preset--spacing--md) 0;
	color: var(--wp--preset--color--text);
	font-size: var(--wp--preset--font-size--body);
}

.e-meniu-newsletter-feedback:empty {
	margin: 0;
}

.e-meniu-newsletter-slidein {
	position: fixed;
	z-index: 20;
	right: max(1rem, env(safe-area-inset-right));
	bottom: max(1rem, env(safe-area-inset-bottom));
	width: 26.25rem;
	max-width: calc(100% - 2rem - env(safe-area-inset-left) - env(safe-area-inset-right));
	max-height: calc(100vh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));
	max-height: calc(100dvh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));
	margin: 0;
	border: 1px solid var(--wp--preset--color--border-subtle);
	border-radius: var(--wp--custom--radius--large);
	background: var(--wp--preset--color--surface-soft);
	box-shadow: var(--wp--custom--shadow--card);
	padding: var(--wp--preset--spacing--xs);
	overflow: auto;
	overscroll-behavior: contain;
}

.e-meniu-newsletter-slidein[hidden] {
	display: none !important;
}

.e-meniu-newsletter-slidein .e-meniu-newsletter-close {
	position: sticky;
	z-index: 1;
	top: 0;
	display: flex;
	width: var(--wp--custom--interactive--target-min);
	min-width: var(--wp--custom--interactive--target-min);
	min-height: var(--wp--custom--interactive--target-min);
	align-items: center;
	justify-content: center;
	margin-inline-start: auto;
	border: 1px solid transparent;
	border-radius: var(--wp--custom--radius--pill);
	background: var(--wp--preset--color--surface-soft);
	color: var(--wp--preset--color--text);
	padding: 0;
	font: inherit;
	font-size: 1.75rem;
	line-height: 1;
	cursor: pointer;
}

.e-meniu-newsletter-slidein .e-meniu-newsletter-card {
	grid-template-columns: minmax(0, 1fr);
	gap: var(--wp--preset--spacing--lg);
	margin: 0;
	border: 0;
	border-radius: 0;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--md) var(--wp--preset--spacing--md);
}

.e-meniu-newsletter-slidein.is-success .e-meniu-newsletter-copy {
	display: none;
}

.e-meniu-newsletter-slidein.is-success .e-meniu-newsletter-feedback {
	margin: 0;
}

.e-meniu-newsletter-page,
.e-meniu-newsletter-guide {
	width: 100%;
	padding: var(--wp--preset--spacing--xl) var(--wp--custom--layout--page-padding) var(--wp--preset--spacing--2-xl);
}

.e-meniu-newsletter-page-card,
.e-meniu-newsletter-guide-card {
	width: 100%;
	max-width: 45rem;
	min-width: 0;
	margin-inline: auto;
	border: 1px solid var(--wp--preset--color--border-subtle);
	border-radius: var(--wp--custom--radius--large);
	background: var(--wp--preset--color--surface);
	box-shadow: var(--wp--custom--shadow--card);
	padding: clamp(1.25rem, 3vw, 2.5rem);
}

.e-meniu-newsletter-guide-card {
	max-width: 48rem;
	padding: clamp(1.25rem, 2.5vw, 2rem);
}

.e-meniu-newsletter-guide {
	padding-block: var(--wp--preset--spacing--lg);
}

.e-meniu-newsletter-page .e-meniu-newsletter-title,
.e-meniu-newsletter-guide .e-meniu-newsletter-title {
	margin-block: 0 var(--wp--preset--spacing--lg);
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--h2);
	line-height: 1.15;
	text-align: center;
}

.e-meniu-newsletter-guide .e-meniu-newsletter-title {
	margin-block-end: var(--wp--preset--spacing--md);
	font-size: clamp(1.25rem, 1.125rem + 0.5vw, 1.5rem);
}

.e-meniu-newsletter-page .e-meniu-newsletter-state--profile form.tnp-button-form.tnp-unsubscribe .tnp-submit {
	border-color: var(--wp--preset--color--olive);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--olive);
}

.e-meniu-newsletter-page .e-meniu-newsletter-state--profile form.tnp-button-form.tnp-unsubscribe .tnp-submit:is(:hover, :focus-visible, :active):not(:disabled) {
	border-color: var(--wp--preset--color--olive);
	background: var(--wp--preset--color--surface-soft);
	color: var(--wp--preset--color--olive);
}

.e-meniu-newsletter-guide-content > p {
	margin-block: 0 var(--wp--preset--spacing--md);
}

.e-meniu-newsletter-page-content > :first-child,
.e-meniu-newsletter-guide-content > :first-child,
.e-meniu-newsletter-native-state > :first-child {
	margin-block-start: 0;
}

.e-meniu-newsletter-page-content > :last-child,
.e-meniu-newsletter-guide-content > :last-child,
.e-meniu-newsletter-native-state > :last-child {
	margin-block-end: 0;
}

.e-meniu-newsletter-page-content a:not(.wp-element-button),
.e-meniu-newsletter-guide-content a:not(.wp-element-button):not(.wp-block-button__link) {
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.e-meniu-newsletter-guide-content .wp-block-buttons {
	margin-block: var(--wp--preset--spacing--md) var(--wp--preset--spacing--sm);
}

.e-meniu-newsletter-guide-content .wp-block-button,
.e-meniu-newsletter-guide-content .wp-block-button__link {
	max-width: 100%;
	min-width: 0;
}

.e-meniu-newsletter-guide-content .wp-block-button__link {
	text-align: center;
	white-space: normal;
}

:is(.e-meniu-newsletter-card, .e-meniu-newsletter-slidein, .e-meniu-newsletter-page, .e-meniu-newsletter-guide) :is(a, button, input, select, textarea, [tabindex]):focus-visible {
	outline: 3px solid var(--wp--preset--color--olive);
	outline-offset: 3px;
}

@media (min-width: 48rem) {
	.e-meniu-newsletter-card {
		grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	}

	body.e-meniu-recipe-single .e-meniu-recipe > .e-meniu-newsletter-card {
		padding-block: 1.875rem;
	}

	body.e-meniu-article-single .e-meniu-article:has(> .e-meniu-newsletter-card) {
		padding-block-end: clamp(3rem, 5vw, 3.25rem);
	}

	body.e-meniu-article-single .e-meniu-article > .e-meniu-newsletter-card {
		margin-block-start: 3rem;
	}
}

@media (hover: hover) {
	.e-meniu-newsletter-form .tnp-submit:hover:not(:disabled),
	.e-meniu-newsletter-page .tnp-submit:hover:not(:disabled) {
		border-color: var(--wp--preset--color--text);
		background: var(--wp--preset--color--text);
	}

	.e-meniu-newsletter-slidein .e-meniu-newsletter-close:hover {
		border-color: var(--wp--preset--color--border-strong);
	}
}
