/* No Fake Orders — checkout popup + phone hint. Everything is scoped to .lpb-fop-* */

.lpb-fop-overlay {
	position: fixed; inset: 0; z-index: 2147483000;
	display: flex; align-items: center; justify-content: center; padding: 16px;
	background: rgba(11, 31, 58, .55); opacity: 0; transition: opacity .2s;
}
.lpb-fop-overlay.is-open { opacity: 1; }

.lpb-fop-modal {
	position: relative; width: 100%; max-width: 380px; box-sizing: border-box;
	background: #fff; border-radius: 18px; padding: 30px 22px 22px; text-align: center;
	box-shadow: 0 24px 60px rgba(11, 31, 58, .3); overflow: hidden;
	transform: translateY(12px) scale(.97); transition: transform .2s;
	font-family: inherit; color: #1e293b;
}
.lpb-fop-overlay.is-open .lpb-fop-modal { transform: none; }
.lpb-fop-modal::before {
	content: ""; position: absolute; top: 0; left: 0; right: 0; height: 5px;
	background: linear-gradient(90deg, #0b1f3a, #0b6e4f 60%, #f28c28);
}

.lpb-fop-modal__icon {
	width: 64px; height: 64px; margin: 0 auto 12px; border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	background: #fff7ed; color: #e07a1f; font-size: 30px; line-height: 1;
}
.lpb-fop-modal__title { margin: 0 0 10px; font-size: 19px; font-weight: 700; color: #0b1f3a; line-height: 1.4; }
.lpb-fop-modal__msg {
	margin: 0 0 18px; padding: 14px; border-radius: 12px; font-size: 15px; line-height: 1.7;
	background: #f8fafc; border: 1px dashed #cbd5e1; color: #334155;
}

.lpb-fop-modal__actions { display: flex; flex-direction: column; gap: 10px; }
.lpb-fop-modal__btn {
	display: flex; align-items: center; justify-content: center; gap: 8px;
	width: 100%; box-sizing: border-box; padding: 12px 16px; border: 0; border-radius: 12px;
	font-size: 15px; font-weight: 700; font-family: inherit; line-height: 1.3;
	text-decoration: none !important; cursor: pointer; color: #fff !important;
}
.lpb-fop-modal__btn:active { transform: scale(.98); }
.lpb-fop-modal__btn--ok { background: #0b1f3a; }
.lpb-fop-modal__btn--ok:hover { background: #16305a; }
.lpb-fop-modal__btn--call { background: #0b6e4f; }
.lpb-fop-modal__btn--call:hover { background: #08553d; }
.lpb-fop-modal__btn svg { width: 18px; height: 18px; fill: currentColor; }

/* Live phone hint under the phone field */
.lpb-fop-hint { display: block; margin-top: 6px; font-size: 13px; line-height: 1.4; font-weight: 600; }
.lpb-fop-hint:empty { display: none; }
.lpb-fop-hint.is-ok { color: #0b6e4f; }
.lpb-fop-hint.is-wait { color: #e07a1f; }
.lpb-fop-hint.is-bad { color: #dc2626; }
input.lpb-fop-bad { border-color: #dc2626 !important; }
