/* Prompt Push EDKYS */
.edkys-push-prompt {
	position: fixed;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%) translateY(120px);
	z-index: 999999;
	width: calc(100% - 40px);
	max-width: 420px;
	background: #fdfbf7;
	border: 1px solid #e8dcc6;
	border-radius: 16px;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.18);
	font-family: 'Poppins', sans-serif;
	opacity: 0;
	transition: transform .45s cubic-bezier(.34,1.56,.64,1), opacity .35s ease;
	overflow: hidden;
}
.edkys-push-prompt.is-visible {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}
.edkys-push-prompt::before {
	content: '';
	display: block;
	height: 4px;
	background: linear-gradient(to right, #d9a860, #af7d31);
}

.edkys-push-inner {
	display: flex;
	flex-direction: column;
	padding: 18px 20px 20px;
	gap: 12px;
}

/* Cloche */
.edkys-push-bell-wrap {
	display: flex;
	justify-content: center;
}
.edkys-push-bell {
	font-size: 38px;
	animation: edkys-ring 1.2s ease-in-out infinite;
	display: inline-block;
	transform-origin: top center;
}
@keyframes edkys-ring {
	0%, 100% { transform: rotate(0deg); }
	10% { transform: rotate(14deg); }
	20% { transform: rotate(-12deg); }
	30% { transform: rotate(10deg); }
	40% { transform: rotate(-8deg); }
	50% { transform: rotate(6deg); }
	60% { transform: rotate(-4deg); }
	70% { transform: rotate(2deg); }
	80% { transform: rotate(0deg); }
}

/* Textes */
.edkys-push-body {
	text-align: center;
}
.edkys-push-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 20px;
	font-weight: 700;
	color: #3d3d3a;
	margin: 0 0 6px;
	line-height: 1.2;
}
.edkys-push-text {
	font-size: 13px;
	color: #7a7a75;
	margin: 0 0 6px;
	line-height: 1.5;
}
.edkys-push-no-email {
	font-size: 11.5px;
	font-weight: 600;
	color: #af7d31;
	margin: 0;
	letter-spacing: .02em;
}

/* Boutons */
.edkys-push-actions {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.edkys-push-btn-accept {
	width: 100%;
	padding: 13px;
	background: linear-gradient(135deg, #d9a860, #af7d31);
	color: #ffffff;
	border: none;
	border-radius: 8px;
	font-family: 'Poppins', sans-serif;
	font-weight: 700;
	font-size: 14px;
	cursor: pointer;
	transition: opacity .2s ease;
}
.edkys-push-btn-accept:hover { opacity: .88; }
.edkys-push-btn-decline {
	width: 100%;
	padding: 8px;
	background: none;
	border: none;
	color: #9a9a92;
	font-size: 12.5px;
	cursor: pointer;
	text-decoration: underline;
}
.edkys-push-btn-decline:hover { color: #3d3d3a; }

/* Confirmation après acceptation */
.edkys-push-success {
	text-align: center;
	padding: 10px 0 4px;
}
.edkys-push-success p {
	font-size: 14px;
	font-weight: 600;
	color: #3c7a52;
	margin: 0;
}

/* Bouton Retour en stock */
.edkys-stock-notify-btn {
	background: none;
	border: 1.5px solid #af7d31;
	color: #af7d31;
	padding: 10px 20px;
	border-radius: 6px;
	font-family: 'Poppins', sans-serif;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	transition: background .2s ease, color .2s ease;
}
.edkys-stock-notify-btn:hover,
.edkys-stock-notify-btn:disabled {
	background: #af7d31;
	color: #ffffff;
}

/* Mode première visite : la page reste inaccessible jusqu'au choix du visiteur. */
.edkys-push-backdrop {
	position: fixed;
	inset: 0;
	z-index: 999998;
	background: rgba(18, 18, 16, 0.58);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity .25s ease, visibility .25s ease;
}
.edkys-push-backdrop.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
html.edkys-push-page-locked,
body.edkys-push-page-locked {
	overflow: hidden !important;
	touch-action: none !important;
}
body.edkys-push-page-locked > *:not(#edkys-push-prompt):not(#edkys-push-backdrop) {
	pointer-events: none !important;
}
.edkys-push-prompt {
	bottom: 50%;
	transform: translate(-50%, 60%) scale(.98);
	max-height: min(88vh, 680px);
	overflow: auto;
}
.edkys-push-prompt.is-visible {
	transform: translate(-50%, 50%) scale(1);
}
.edkys-push-status {
	font-size: 12px;
	line-height: 1.45;
	color: #8a6a39;
	margin: 8px 0 0;
	font-weight: 600;
}
.edkys-push-btn-accept:disabled {
	opacity: .65;
	cursor: wait;
}
@media (max-width: 640px) {
	.edkys-push-prompt {
		width: calc(100% - 24px);
		bottom: 50%;
	}
	.edkys-push-inner {
		padding: 20px 18px 18px;
	}
}
