.dkje-nudge {
	box-sizing: border-box;
	position: fixed;
	z-index: 99999;
	right: 20px;
	bottom: 20px;
	width: min(360px, calc(100% - 32px));
	padding: 24px;
	background: #fff;
	border: 1px solid #d8e5e7;
	border-radius: 8px;
	box-shadow: 0 14px 40px rgba(26, 39, 67, .18);
	color: #202348;
	font: 400 16px/1.45 Arial, sans-serif;
}

.dkje-nudge h2 { margin: 0 32px 8px 0; color: #202348; font: 700 22px/1.2 Georgia, serif; letter-spacing: 0; }
.dkje-nudge__eyebrow { margin: 0 0 7px; color: #167f91; font-weight: 700; font-size: 12px; text-transform: uppercase; }
.dkje-nudge__message { margin: 0 0 18px; }
.dkje-nudge__close { position: absolute; top: 10px; right: 12px; border: 0; background: transparent; color: #5f6877; font-size: 27px; line-height: 1; cursor: pointer; }
.dkje-nudge__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.dkje-nudge__action { border: 0; border-radius: 4px; background: #167f91; color: #fff; padding: 10px 14px; font: 700 14px/1.2 Arial, sans-serif; cursor: pointer; }
.dkje-nudge__response { margin: 0; padding: 12px; background: #edf7f6; border-radius: 4px; }
.dkje-nudge__back,
.dkje-nudge__optout { border: 0; background: transparent; color: #167f91; padding: 8px 0; font: 700 13px/1.2 Arial, sans-serif; cursor: pointer; text-decoration: underline; }
.dkje-nudge__form { display: grid; gap: 10px; }
.dkje-nudge__form label { display: grid; gap: 4px; font-weight: 700; font-size: 14px; }
.dkje-nudge__form input,
.dkje-nudge__form textarea { box-sizing: border-box; width: 100%; border: 1px solid #8f9ca6; border-radius: 4px; padding: 8px; font: inherit; }
.dkje-nudge__honeypot { position: absolute; left: -9999px; }
.dkje-nudge__form-status { margin: 0; font-size: 14px; }
.dkje-nudge__privacy { color: #167f91; font-size: 12px; }
.dkje-launcher {
	box-sizing: border-box;
	position: fixed;
	z-index: 99997;
	right: 20px;
	bottom: 15px;
	width: 56px;
	height: 56px;
	border: 0;
	border-radius: 50%;
	background: #008576;
	box-shadow: 0 8px 22px rgba(26, 39, 67, .22);
	color: #fff;
	font: 700 32px/1 Arial, sans-serif;
	cursor: pointer;
	transition: opacity .18s ease, transform .18s ease;
}
.dkje-launcher:hover,
.dkje-launcher:focus-visible { background: #167f91; transform: translateY(-2px); }
.dkje-launcher[hidden] { display: none; }
.dkje-fomo {
	box-sizing: border-box;
	position: fixed;
	z-index: 99996;
	right: 20px;
	bottom: 87px;
	width: min(330px, calc(100% - 32px));
	padding: 14px 40px 14px 16px;
	border: 1px solid #d8e5e7;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(26, 39, 67, .16);
	color: #202348;
	font: 400 14px/1.4 Arial, sans-serif;
	opacity: 0;
	transform: translateY(8px);
	transition: opacity .18s ease, transform .18s ease;
}
.dkje-fomo.is-visible { opacity: 1; transform: translateY(0); }
.dkje-fomo__visitors,
.dkje-fomo__product { margin: 0; }
.dkje-fomo__product { margin-top: 7px; }
.dkje-fomo a { color: #167f91; font-weight: 700; }
.dkje-fomo__close { position: absolute; top: 8px; right: 10px; border: 0; background: transparent; color: #5f6877; font: 400 24px/1 Arial, sans-serif; cursor: pointer; }

@media (max-width: 600px) {
	.dkje-nudge {
		left: max(12px, env(safe-area-inset-left));
		right: max(12px, env(safe-area-inset-right));
		bottom: max(86px, calc(env(safe-area-inset-bottom) + 16px));
		width: auto;
		max-height: calc(100dvh - 112px - env(safe-area-inset-bottom));
		overflow-y: auto;
		padding: 18px;
	}

	.dkje-nudge h2 { font-size: 20px; }
	.dkje-launcher { right: max(12px, env(safe-area-inset-right)); bottom: max(15px, env(safe-area-inset-bottom)); }
	.dkje-fomo { left: max(12px, env(safe-area-inset-left)); right: max(12px, env(safe-area-inset-right)); bottom: max(87px, calc(env(safe-area-inset-bottom) + 72px)); width: auto; }
}
