/* AromaRay Rewards — progress bar (luxury, matches the reviews section) */
.arwd-bar{
	--arwd-accent:#C8A25C;
	--arwd-ink:#1D2733;
	box-sizing:border-box;
	margin:0 0 24px;
	padding:22px 26px 30px;
	background:#fff;
	border:1px solid rgba(29,39,51,.08);
	border-radius:6px;
	color:var(--arwd-ink);
	-webkit-font-smoothing:antialiased;
}
.arwd-bar *{box-sizing:border-box;}
.arwd-bar__title{
	font-size:11px;
	font-weight:700;
	letter-spacing:.18em;
	text-transform:uppercase;
	color:var(--arwd-accent);
	margin-bottom:10px;
}
.arwd-bar__msg{
	font-size:15px;
	line-height:1.55;
	color:var(--arwd-ink);
	margin-bottom:26px;
}
.arwd-bar__msg b{font-weight:700;}
.arwd-accent{color:var(--arwd-accent);}

/* track */
.arwd-track{
	position:relative;
	height:6px;
	margin:0 6px 58px;
	background:rgba(29,39,51,.10);
	border-radius:999px;
}
.arwd-fill{
	position:absolute;
	top:0;left:0;height:100%;
	background:linear-gradient(90deg, var(--arwd-accent), color-mix(in srgb, var(--arwd-accent) 70%, #fff));
	border-radius:999px;
	transition:width 1s cubic-bezier(.22,.61,.36,1);
}

/* markers */
.arwd-marker{
	position:absolute;
	top:50%;
	transform:translate(-50%,-50%);
	text-align:center;
	width:0;
}
.arwd-dot{
	display:block;
	width:16px;height:16px;
	margin:0 auto;
	border-radius:50%;
	background:#fff;
	border:2px solid rgba(29,39,51,.20);
	transition:border-color .4s ease, background .4s ease, box-shadow .4s ease;
}
.arwd-marker.is-unlocked .arwd-dot{
	border-color:var(--arwd-accent);
	background:var(--arwd-accent);
	box-shadow:0 0 0 4px rgba(200,162,92,.16);
}
.arwd-mlabel{
	position:absolute;
	top:24px;left:50%;
	transform:translateX(-50%);
	white-space:nowrap;
	display:flex;
	flex-direction:column;
	gap:2px;
	line-height:1.2;
}
.arwd-mval{
	font-size:13px;
	font-weight:700;
	color:var(--arwd-ink);
}
.arwd-mgift{
	font-size:10.5px;
	letter-spacing:.04em;
	color:rgba(29,39,51,.5);
	max-width:90px;
	overflow:hidden;
	text-overflow:ellipsis;
	margin:0 auto;
}
.arwd-marker.is-unlocked .arwd-mval{color:var(--arwd-accent);}

/* gift line in cart */
.arwd-gift-tag{
	display:inline-block;
	margin-left:6px;
	padding:2px 8px;
	font-size:10px;
	font-weight:700;
	letter-spacing:.08em;
	text-transform:uppercase;
	color:var(--arwd-accent,#C8A25C);
	border:1px solid rgba(200,162,92,.4);
	border-radius:999px;
	vertical-align:middle;
}
.arwd-gift-free{font-weight:700;color:#2e9e5b;}
.arwd-qty{font-weight:600;}

/* mini-cart is narrow — hide the per-marker labels there, keep the bar */
.widget_shopping_cart .arwd-bar,
.arwd-fragment .arwd-bar{padding:16px 16px 20px;}
.widget_shopping_cart .arwd-track,
.arwd-fragment .arwd-track{margin-bottom:26px;}
.widget_shopping_cart .arwd-mgift,
.arwd-fragment .arwd-mgift{display:none;}

@media (max-width:600px){
	.arwd-bar{padding:18px 18px 26px;}
	.arwd-bar__msg{font-size:14px;margin-bottom:24px;}
	.arwd-mgift{display:none;}
	.arwd-mval{font-size:12px;}
}

@media (prefers-reduced-motion:reduce){
	.arwd-fill{transition:none;}
}

/* =====================================================================
   v1.2.0 — product page block, live hint, celebration burst + toast
   ===================================================================== */

/* ---------- product page ---------- */
.arwd-pp{ margin:0 0 22px; }
.arwd-pp .arwd-bar{ margin:0 0 10px; padding:18px 20px 24px; }
.arwd-pp .arwd-bar__msg{ font-size:14px; margin-bottom:22px; }
.arwd-pp .arwd-track{ margin-bottom:44px; }

.arwd-pp-hint{
	display:none;
	align-items:flex-start;
	gap:10px;
	padding:12px 16px;
	background:#FBF8F2;
	border:1px solid rgba(200,162,92,.35);
	border-left:3px solid var(--arwd-accent,#C8A25C);
	border-radius:4px;
	font-size:14px;
	line-height:1.5;
	color:var(--arwd-ink,#1D2733);
}
.arwd-pp-hint.is-on{ display:flex; animation:arwd-in .45s cubic-bezier(.22,.61,.36,1) both; }
.arwd-pp-hint b{ font-weight:700; }
.arwd-pp-ico{ font-size:17px; line-height:1.3; flex:0 0 auto; }

@keyframes arwd-in{
	from{ opacity:0; transform:translateY(6px); }
	to  { opacity:1; transform:none; }
}

/* ---------- emoji burst ---------- */
.arwd-burst{
	position:fixed;
	inset:0;
	pointer-events:none;
	z-index:100001;
	overflow:hidden;
}
.arwd-emo{
	position:absolute;
	margin:-.5em 0 0 -.5em;
	line-height:1;
	opacity:0;
	will-change:transform,opacity;
	user-select:none;
}

/* ---------- toast ---------- */
.arwd-toast{
	position:fixed;
	right:24px;
	bottom:24px;
	z-index:100002;
	box-sizing:border-box;
	width:min(370px, calc(100vw - 32px));
	padding:20px 22px 18px;
	background:#fff;
	border:1px solid rgba(29,39,51,.08);
	border-top:3px solid var(--arwd-accent,#C8A25C);
	border-radius:6px;
	box-shadow:0 18px 50px rgba(29,39,51,.18);
	color:var(--arwd-ink,#1D2733);
	font-size:14px;
	line-height:1.5;
	text-align:left;
	opacity:0;
	transform:translateY(16px) scale(.98);
	transition:opacity .35s cubic-bezier(.22,.61,.36,1), transform .35s cubic-bezier(.22,.61,.36,1);
}
.arwd-toast *{ box-sizing:border-box; }
.arwd-toast.is-in{ opacity:1; transform:none; }

.arwd-toast button.arwd-toast__x{
	position:absolute;
	top:8px;
	right:8px;
	width:30px;
	height:30px;
	padding:0;
	border:0 !important;
	background:transparent !important;
	box-shadow:none !important;
	color:rgba(29,39,51,.45) !important;
	font-size:22px;
	line-height:1;
	cursor:pointer;
}
.arwd-toast__emo{ font-size:22px; letter-spacing:2px; line-height:1.25; margin:0 30px 8px 0; }
.arwd-toast.is-big .arwd-toast__emo{ font-size:27px; }
.arwd-toast__title{ font-size:16px; font-weight:700; margin:0 24px 4px 0; color:var(--arwd-ink,#1D2733); }
.arwd-toast__body{ color:rgba(29,39,51,.78); }
.arwd-toast__body b{ color:var(--arwd-ink,#1D2733); }
.arwd-t-sub{ font-size:13px; color:rgba(29,39,51,.55); margin-top:2px; }
.arwd-t-next{ font-size:13px; margin-top:8px; }

.arwd-toast__track{
	height:5px;
	margin:14px 0 2px;
	border-radius:999px;
	background:rgba(29,39,51,.10);
	overflow:hidden;
}
.arwd-toast__track span{
	display:block;
	width:0;
	height:100%;
	border-radius:999px;
	background:var(--arwd-accent,#C8A25C);
	transition:width .9s cubic-bezier(.22,.61,.36,1) .15s;
}

.arwd-toast__actions{ display:flex; align-items:center; gap:14px; margin-top:14px; }
.arwd-toast button.arwd-toast__go{
	flex:1;
	margin:0;
	padding:11px 14px;
	border:0;
	border-radius:4px;
	background:var(--arwd-ink,#1D2733);
	color:#fff;
	font-size:12px;
	font-weight:700;
	letter-spacing:.08em;
	text-transform:uppercase;
	cursor:pointer;
	transition:background .25s ease;
}
.arwd-toast button.arwd-toast__go:hover{ background:var(--arwd-accent,#C8A25C); }
.arwd-toast__cart{
	font-size:13px;
	color:var(--arwd-ink,#1D2733);
	text-decoration:underline;
	text-underline-offset:3px;
	white-space:nowrap;
}

/* phones: top of screen, clear of bottom bars / Boost popups */
@media (max-width:600px){
	.arwd-toast{
		left:50%;
		right:auto;
		bottom:auto;
		top:calc(12px + env(safe-area-inset-top, 0px));
		transform:translate(-50%,-16px) scale(.98);
	}
	.arwd-toast.is-in{ transform:translate(-50%,0); }
}

@media (prefers-reduced-motion:reduce){
	.arwd-toast, .arwd-toast__track span{ transition:none; }
	.arwd-pp-hint.is-on{ animation:none; }
}
