/* VARIALUXE Glow — uses the child theme tokens (rose & mauve). */
.vlx-glow-bag { display: grid; gap: 8px; margin: 16px 0 8px; }
.vlx-hold, .vlx-pre {
	margin: 0;
	padding: 8px 16px;
	border-radius: 8px;
	background: var(--blush, #F6E3EC);
	color: var(--ink, #3F1D34);
	font-size: 14px;
	line-height: 24px;
}
.vlx-hold b { font-family: var(--font-lat, 'Montserrat', sans-serif); font-weight: 500; color: var(--wine, #93406F); }
.vlx-hold.ended b { color: var(--muted, #76586B); }
.vlx-glow-box {
	padding: 16px;
	border: 1px solid var(--line, #EBD2DF);
	border-radius: 16px;
	background:
		radial-gradient(80% 120% at 100% 0%, rgba(255, 255, 255, .9), transparent 60%),
		linear-gradient(160deg, #FCEFF5, #F3DCE8);
	box-shadow: inset 0 1px 0 #FFFFFF;
}
.vlx-glow-head { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; color: var(--wine, #93406F); }
.vlx-glow-head span { font-size: 14px; color: var(--muted, #76586B); }
.vlx-glow-box p { margin: 8px 0 0; font-size: 14px; line-height: 24px; color: var(--ink, #3F1D34); }
.vlx-earn b, .vlx-used { color: var(--wine, #93406F); }
.vlx-redeem { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.vlx-redeem button {
	min-height: 44px;
	padding: 8px 16px;
	border: 1px solid var(--wine, #93406F);
	border-radius: 999px;
	background: var(--wine, #93406F);
	color: #FFFFFF;
	font: inherit;
	font-size: 14px;
	cursor: pointer;
}
.vlx-redeem button.vlx-link { background: transparent; color: var(--wine, #93406F); border-color: transparent; text-decoration: underline; }
.vlx-redeem button:disabled { opacity: .5; }
.vlx-glow-cta { display: inline-block; margin-top: 8px; color: var(--wine, #93406F); font-weight: 500; }
.vlx-preorder-note { margin: 8px 0 0; font-size: 14px; line-height: 24px; color: var(--muted, #76586B); }
.product-card.is-preorder .stock-label,
.product-card.is-preorder .availability { color: var(--wine, #93406F); }

/* My Account + Glow Club page */
.vlx-glow-card {
	position: relative;
	overflow: hidden;
	margin: 0 0 24px;
	padding: 24px;
	border-radius: 24px;
	border: 1px solid rgba(255, 255, 255, .9);
	background:
		radial-gradient(60% 80% at 90% 10%, rgba(255, 255, 255, .85), transparent 60%),
		radial-gradient(70% 90% at 0% 100%, rgba(214, 150, 190, .45), transparent 60%),
		linear-gradient(160deg, #FAE9F1, #EBC9DC);
	box-shadow: 0 16px 40px rgba(63, 29, 52, .14), inset 0 1px 0 #FFFFFF;
	color: var(--ink, #3F1D34);
}
.vlx-glow-eyebrow { font-family: var(--font-lat, 'Montserrat', sans-serif); font-size: 12px; line-height: 16px; letter-spacing: .14em; color: var(--wine, #93406F); }
.vlx-glow-balance { display: flex; align-items: baseline; gap: 8px; margin: 8px 0; }
.vlx-glow-balance strong { font-family: var(--font-lat, 'Montserrat', sans-serif); font-size: 48px; line-height: 56px; font-weight: 500; color: var(--wine, #93406F); }
.vlx-glow-balance span { font-size: 16px; }
.vlx-glow-card p { margin: 4px 0; font-size: 14px; line-height: 24px; }
.vlx-glow-progress { height: 8px; margin: 8px 0; border-radius: 999px; background: rgba(255, 255, 255, .7); overflow: hidden; }
.vlx-glow-progress span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #C27FA4, var(--wine, #93406F)); }
.vlx-glow-rules { margin: 24px 0; padding: 24px; border: 1px solid var(--line, #EBD2DF); border-radius: 16px; background: var(--white, #FFFFFF); }
.vlx-glow-rules h3 { margin-top: 0; }
.vlx-glow-rules li { margin: 8px 0; line-height: 28px; }
.vlx-glow-history { width: 100%; border-collapse: collapse; font-size: 14px; }
.vlx-glow-history th, .vlx-glow-history td { padding: 8px; border-bottom: 1px solid var(--line, #EBD2DF); text-align: start; }
.vlx-fav-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 16px; }
.vlx-fav-item { padding: 16px; border: 1px solid var(--line, #EBD2DF); border-radius: 16px; background: var(--white, #FFFFFF); }
.vlx-fav-item h4 { margin: 0 0 8px; font-size: 16px; line-height: 26px; }
.vlx-fav-item p { margin: 4px 0; font-size: 14px; }
.vlx-fav-stock { color: var(--wine, #93406F); }
.vlx-glow-page { max-width: 760px; margin: 0 auto; }
.vlx-glow-hero { text-align: center; padding: 48px 24px; }
.vlx-glow-hero h2 { margin: 8px 0 16px; }
.vlx-glow-hero .vlx-glow-card { text-align: start; margin-top: 24px; }
.vlx-glow-perks { display: flex; justify-content: center; flex-wrap: wrap; gap: 16px; margin: 24px 0; }
.vlx-glow-perks div {
	min-width: 140px;
	padding: 16px;
	border-radius: 16px;
	background: linear-gradient(160deg, #FCEFF5, #F3DCE8);
	border: 1px solid rgba(255, 255, 255, .9);
}
.vlx-glow-perks b { display: block; font-family: var(--font-lat, 'Montserrat', sans-serif); font-size: 32px; line-height: 40px; font-weight: 500; color: var(--wine, #93406F); }
.vlx-glow-perks span { font-size: 14px; }

/* ------------------------------------------------------------------ */
/* Glow Club logo (1.1.0): gold lotus with a slow shimmer              */
/* ------------------------------------------------------------------ */
.glow-mark {
	position: relative;
	display: inline-block;
	flex: none;
	line-height: 0;
	isolation: isolate;
}
.glow-mark img { display: block; height: auto; filter: drop-shadow(0 6px 14px rgba(147, 64, 111, .18)); }
.glow-mark--sm img { width: 28px; }
.glow-mark--md img { width: 56px; }
.glow-mark--lg img { width: 140px; }
.glow-mark--xl img { width: 200px; }
/* light sweeping across the gold, clipped to the logo shape */
.glow-mark::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(105deg, transparent 38%, rgba(255, 250, 240, .9) 50%, transparent 62%);
	background-size: 260% 100%;
	background-position: 160% 0;
	-webkit-mask: var(--glow-logo) center / contain no-repeat;
	mask: var(--glow-logo) center / contain no-repeat;
	animation: glow-sheen 5.5s ease-in-out infinite;
	pointer-events: none;
}
/* soft aura that breathes behind the large logo */
.glow-mark--lg::before,
.glow-mark--xl::before {
	content: "";
	position: absolute;
	inset: -18% -12%;
	z-index: -1;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(233, 168, 203, .45), rgba(233, 168, 203, 0));
	animation: glow-breathe 4.5s ease-in-out infinite;
}
.glow-mark--sm::after { animation-duration: 7s; }
@keyframes glow-sheen { 0%, 55% { background-position: 160% 0; } 100% { background-position: -60% 0; } }
@keyframes glow-breathe { 0%, 100% { opacity: .55; transform: scale(.94); } 50% { opacity: 1; transform: scale(1.04); } }
a:hover .glow-mark::after,
.vlx-acc-tile:hover .glow-mark::after { animation-duration: 1.6s; }

/* Where the logo sits */
.vlx-glow-card-head { display: flex; align-items: center; gap: 12px; }
.vlx-glow-hero .glow-mark { display: block; width: max-content; margin: 0 auto 16px; }
.vlx-glow-head b { display: inline-flex; align-items: center; gap: 8px; }
.glow-mini { display: inline-block; width: 26px; height: auto; }
.vlx-acc-tile .glow-mark { margin-bottom: 4px; }

/* Small logo before «نادي التوهّج» in menus */
.woocommerce-MyAccount-navigation-link--glow-club a::before,
.glow-link::before {
	content: "";
	flex: none;
	width: 24px;
	height: 19px;
	margin-inline-end: 10px;
	background: url(glow-logo-160.webp) center / contain no-repeat;
}
.woocommerce-MyAccount-navigation-link--glow-club.is-active a::before { filter: brightness(1.6) saturate(.6); }

@media (prefers-reduced-motion: reduce) {
	.glow-mark::after, .glow-mark::before { animation: none; }
}
