/* ==========================================================================
   Frosted Bloom — glass theme for Popup Maker popups.

   HOW TO USE: open your popup in Popup Maker -> Advanced -> "Popup Element
   Custom Classes" -> add:  gfd-glass-popup
   (Rules target the class whether Popup Maker puts it on the container or the
   overlay, so it works either way.)
   ========================================================================== */

/* Overlay: dimmed + softly blurred */
.pum-overlay.gfd-glass-popup,
.pum-overlay:has(.pum-container.gfd-glass-popup) {
	background: rgba(58, 20, 40, 0.38) !important;
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
}

/* The popup card: frosted glass */
.pum-container.gfd-glass-popup,
.pum-overlay.gfd-glass-popup .pum-container {
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.93), rgba(255, 241, 246, 0.93)) !important;
	-webkit-backdrop-filter: blur(20px);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(255, 255, 255, 0.9) !important;
	border-radius: 24px !important;
	box-shadow: 0 30px 70px rgba(214, 68, 122, 0.20) !important;
	padding: 34px 30px !important;
	max-width: 460px;
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Montserrat', sans-serif;
}

/* Typography */
.pum-container.gfd-glass-popup,
.pum-overlay.gfd-glass-popup .pum-container,
.pum-container.gfd-glass-popup .pum-content,
.pum-overlay.gfd-glass-popup .pum-content,
.pum-container.gfd-glass-popup p,
.pum-overlay.gfd-glass-popup p { color: #4a4a58 !important; line-height: 1.6; }

.pum-container.gfd-glass-popup .pum-title,
.pum-overlay.gfd-glass-popup .pum-title,
.pum-container.gfd-glass-popup h1, .pum-overlay.gfd-glass-popup h1,
.pum-container.gfd-glass-popup h2, .pum-overlay.gfd-glass-popup h2,
.pum-container.gfd-glass-popup h3, .pum-overlay.gfd-glass-popup h3 {
	color: #8a2b53 !important;
	font-weight: 800 !important;
	text-align: center;
	line-height: 1.2;
}

.pum-container.gfd-glass-popup .pum-content a:not(.pum-close):not(.button):not(.gfd-glass-btn),
.pum-overlay.gfd-glass-popup .pum-content a:not(.pum-close):not(.button):not(.gfd-glass-btn) {
	color: #c43a6c;
	font-weight: 600;
}

/* Buttons inside popups (add class "gfd-glass-btn", or a WP .button) */
.pum-container.gfd-glass-popup .pum-content .button,
.pum-overlay.gfd-glass-popup .pum-content .button,
.pum-container.gfd-glass-popup .pum-content a.gfd-glass-btn,
.pum-overlay.gfd-glass-popup .pum-content a.gfd-glass-btn {
	display: inline-block;
	background: linear-gradient(135deg, #d6447a, #c43a6c) !important;
	color: #fff !important;
	font-weight: 700;
	text-decoration: none !important;
	padding: 12px 26px;
	border-radius: 999px;
	border: none;
	box-shadow: 0 8px 20px rgba(214, 68, 122, 0.28);
	transition: filter .12s ease, transform .12s ease;
}
.pum-container.gfd-glass-popup .pum-content .button:hover,
.pum-overlay.gfd-glass-popup .pum-content .button:hover,
.pum-container.gfd-glass-popup .pum-content a.gfd-glass-btn:hover,
.pum-overlay.gfd-glass-popup .pum-content a.gfd-glass-btn:hover { filter: brightness(1.05); transform: translateY(-1px); color: #fff !important; }

/* Close button: glass circle with a clean "×" (hides the theme's "CLOSE" text),
   positioned inside the corner so it never overflows a wide popup. */
.pum-container.gfd-glass-popup .pum-close,
.pum-overlay.gfd-glass-popup .pum-close {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	left: auto !important;
	bottom: auto !important;
	width: 32px !important;
	height: 32px !important;
	min-width: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	background: rgba(255, 255, 255, 0.85) !important;
	border: 1px solid rgba(214, 68, 122, 0.22) !important;
	border-radius: 50% !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.10) !important;
	font-size: 0 !important;           /* hide the "CLOSE" text label */
	text-indent: -9999px;              /* belt-and-suspenders for text nodes */
	overflow: hidden !important;
	opacity: 1 !important;
	transition: transform .12s ease, background .12s ease;
}
.pum-container.gfd-glass-popup .pum-close::before,
.pum-overlay.gfd-glass-popup .pum-close::before {
	content: "\00d7";
	position: absolute;
	inset: 0;
	text-indent: 0;
	font-size: 21px !important;
	font-weight: 700;
	line-height: 32px;
	text-align: center;
	color: #c43a6c;
}
.pum-container.gfd-glass-popup .pum-close:hover,
.pum-overlay.gfd-glass-popup .pum-close:hover { transform: scale(1.08); background: #fff !important; }
.pum-container.gfd-glass-popup .pum-close:hover::before,
.pum-overlay.gfd-glass-popup .pum-close:hover::before { color: #c43a6c; }

@media (max-width: 520px) {
	.pum-container.gfd-glass-popup,
	.pum-overlay.gfd-glass-popup .pum-container { padding: 28px 20px !important; border-radius: 20px !important; }
}

/* ==========================================================================
   Dynamic popup content — [gfd_coupon] and [gfd_app_install] cards.
   These style the shortcode output; they work in any popup (glass or not).
   ========================================================================== */

/* ── Coupon card ──────────────────────────────────────────────────────────── */
.gfd-pop-coupon { text-align: center; }
.gfd-pop-coupon__head { font-size: 15px; font-weight: 700; color: #8a2b53; margin-bottom: 6px; }
.gfd-pop-coupon__disc {
	font-size: 34px; font-weight: 800; line-height: 1.1;
	color: #c43a6c; margin: 4px 0 10px;
}
.gfd-pop-coupon__label { font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: #8a7580; margin-bottom: 6px; }
.gfd-pop-coupon__code {
	display: inline-flex; align-items: center; gap: 12px;
	background: rgba(255, 255, 255, 0.7);
	border: 1px dashed #d6447a;
	color: #8a2b53;
	font-size: 20px; font-weight: 800; letter-spacing: .08em;
	padding: 10px 18px; border-radius: 12px; cursor: pointer;
	transition: background .12s ease, transform .12s ease;
}
.gfd-pop-coupon__code:hover { background: #fff; transform: translateY(-1px); }
.gfd-pop-coupon__code.is-copied { background: #eafbf0; border-color: #34a853; }
.gfd-pop-coupon__copy {
	font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
	color: #fff; background: linear-gradient(135deg, #d6447a, #c43a6c);
	padding: 4px 10px; border-radius: 999px;
}
.gfd-pop-coupon__code.is-copied .gfd-pop-coupon__copy { background: #34a853; }
.gfd-pop-coupon__desc { font-size: 14px; color: #4a4a58; margin: 12px 0 4px; }
.gfd-pop-coupon__exp { font-size: 12.5px; color: #8a7580; margin-bottom: 16px; }
.gfd-pop-coupon__cta { margin-top: 4px; }

/* ── App-install card ─────────────────────────────────────────────────────── */
.gfd-pop-app { text-align: center; }
.gfd-pop-app__icon {
	width: 68px; height: 68px; border-radius: 16px; margin: 0 auto 12px;
	box-shadow: 0 8px 20px rgba(214, 68, 122, 0.20); display: block;
}
.gfd-pop-app__title { font-size: 21px; font-weight: 800; color: #8a2b53; margin: 0 0 8px; }
.gfd-pop-app__text { font-size: 14.5px; color: #4a4a58; margin: 0 0 18px; line-height: 1.55; }
.gfd-pop-app__badge.gfd-ps-badge {
	display: inline-flex; align-items: center; gap: 10px;
	background: #111; color: #fff !important; text-decoration: none !important;
	padding: 10px 22px; border-radius: 12px; transition: background .12s ease, transform .12s ease;
}
.gfd-pop-app__badge.gfd-ps-badge:hover { background: #000; transform: translateY(-1px); }
.gfd-pop-app__badge .gfd-ps-badge__ico { width: 24px; height: 24px; flex: 0 0 auto; }
.gfd-pop-app__badge .gfd-ps-badge__txt {
	display: flex; flex-direction: column; line-height: 1.15; text-align: left;
	font-size: 17px; font-weight: 700;
}
.gfd-pop-app__badge .gfd-ps-badge__txt small {
	font-size: 9px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; opacity: .85;
}
