/* Bounded native WooCommerce presentation: no rules leave this account body. */
@font-face {
	font-family: "BB Space Grotesk";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("../fonts/space-grotesk.woff2") format("woff2");
}
body.bbfaq-account-experience {
	--bb-account-ink: #333333;
	--bb-account-paper: #ffffff;
	--bb-account-surface: #fffdfb;
	--bb-account-night: #2d1932;
	--bb-account-plum: #432a49;
	--bb-account-gold: #b89d5c;
	--bb-account-lavender: #8a6aad;
	--bb-account-line: #e2dbe4;
	--bb-account-muted: #665d68;
	background: radial-gradient(circle at 84% 4%, #eadff0 0, #fbf8f5 31rem);
	color: var(--bb-account-ink);
}
body.bbfaq-account-experience .bb-account__masthead {
	position: relative;
	isolation: isolate;
	box-sizing: border-box;
	width: min(1200px, calc(100vw - 24px));
	max-width: none;
	margin: 0 auto;
	padding: 40px clamp(20px, 5vw, 68px) 72px;
	overflow: visible;
	background: linear-gradient(118deg, #2b1730, var(--bb-account-plum) 52%, #684b70);
	color: var(--bb-account-paper);
	font-family: Montserrat, "BB Space Grotesk", sans-serif;
	border-radius: 0 0 28px 28px;
	box-shadow: 0 18px 44px rgba(33, 16, 39, .22);
}
body.bbfaq-account-experience .bb-account__masthead-copy {
	position: relative;
	z-index: 2;
	max-width: min(62ch, calc(100% - 240px));
}
body.bbfaq-account-experience .bb-account__mascot {
	position: absolute;
	z-index: 1;
	right: clamp(18px, 5vw, 72px);
	bottom: 0;
	width: clamp(170px, 20vw, 238px);
	height: clamp(170px, 20vw, 238px);
	max-height: calc(100% - 24px);
	margin: 0;
	pointer-events: none;
}
body.bbfaq-account-experience .bb-account__mascot img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	filter: drop-shadow(0 14px 18px rgba(9, 3, 13, .28));
}
body.bbfaq-account-experience .bb-account__masthead::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 18px;
	right: clamp(20px, 8vw, 110px);
	width: 126px;
	height: 126px;
	border: 1px solid rgba(184, 157, 92, .44);
	border-radius: 50%;
	box-shadow: 30px -16px 0 -29px var(--bb-account-gold), -44px 62px 0 -43px var(--bb-account-lavender);
}
body.bbfaq-account-experience .bb-account__masthead::after {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	background-image:
		radial-gradient(circle at calc(100% - 170px) 62%, transparent 0 71px, rgba(184, 157, 92, .3) 72px 73px, transparent 74px),
		radial-gradient(circle at calc(100% - 126px) 62%, transparent 0 105px, rgba(218, 198, 226, .16) 106px 107px, transparent 108px),
		radial-gradient(rgba(243, 236, 220, .32) 1px, transparent 1.5px);
	background-size: auto, auto, 24px 24px;
	mask-image: linear-gradient(90deg, #000, transparent);
}
body.bbfaq-account-experience .bb-account__eyebrow {
	margin: 0 0 8px;
	color: var(--bb-account-gold);
	font-size: .74rem;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
}
body.bbfaq-account-experience .bb-account__title {
	max-width: 18ch;
	margin: 0;
	color: inherit;
	font-family: Montserrat, "BB Space Grotesk", sans-serif;
	font-size: clamp(2rem, 4vw, 3.4rem);
	line-height: 1.05;
	letter-spacing: -.03em;
}
body.bbfaq-account-experience .bb-account__intro { max-width: 54ch; margin: 14px 0 0; color: var(--bb-account-paper); }
body.bbfaq-account-experience .woocommerce {
	box-sizing: border-box;
	width: min(1120px, calc(100% - clamp(24px, 5vw, 72px)));
	max-width: 1120px;
	margin: -34px auto 52px;
	padding: clamp(20px, 4vw, 46px);
	background: var(--bb-account-surface);
	border: 1px solid rgba(219, 203, 185, .9);
	border-radius: 24px;
	box-shadow: 0 22px 56px rgba(33, 16, 39, .14);
}
body.bbfaq-account-experience .woocommerce::after { content: ""; display: block; clear: both; }
body.bbfaq-account-experience .woocommerce,
body.bbfaq-account-experience .woocommerce input,
body.bbfaq-account-experience .woocommerce textarea,
body.bbfaq-account-experience .woocommerce select { font-family: Montserrat, "BB Space Grotesk", sans-serif; }
body.bbfaq-account-experience .woocommerce h2,
body.bbfaq-account-experience .woocommerce h3,
body.bbfaq-account-experience .woocommerce legend {
	color: var(--bb-account-plum);
	font-family: Montserrat, "BB Space Grotesk", sans-serif;
	letter-spacing: -.02em;
}
body.bbfaq-account-experience .woocommerce h2 { font-size: clamp(1.55rem, 3vw, 2.15rem); }
body.bbfaq-account-experience .woocommerce p a:not(.button),
body.bbfaq-account-experience .woocommerce td a:not(.button) { color: var(--bb-account-plum); font-weight: 700; text-decoration-thickness: 2px; text-underline-offset: 3px; }
body.bbfaq-account-experience .woocommerce p a:not(.button):hover,
body.bbfaq-account-experience .woocommerce td a:not(.button):hover { color: #6b3386; }
body.bbfaq-account-experience .woocommerce-form-login,
body.bbfaq-account-experience .woocommerce-form-register { box-sizing: border-box; border: 0; border-radius: 0; background: transparent; padding: 0; }
body.bbfaq-account-experience .woocommerce #customer_login {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	align-items: start;
	width: 100% !important;
	max-width: none !important;
	gap: 0;
}
body.bbfaq-account-experience .woocommerce #customer_login > .u-column1,
body.bbfaq-account-experience .woocommerce #customer_login > .u-column2 {
	box-sizing: border-box !important;
	float: none !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
}
body.bbfaq-account-experience .woocommerce #customer_login > .u-column1 {
	grid-column: 1 !important;
	grid-row: 1 !important;
}
body.bbfaq-account-experience .woocommerce #customer_login > .u-column2 {
	grid-column: 2 !important;
	grid-row: 1 !important;
}
body.bbfaq-account-experience .u-column1 { padding-right: clamp(20px, 3vw, 48px); border-right: 1px solid var(--bb-account-line); }
body.bbfaq-account-experience .u-column2 { padding-left: clamp(20px, 3vw, 48px); }
body.bbfaq-account-experience .woocommerce #customer_login form.woocommerce-form-login,
body.bbfaq-account-experience .woocommerce #customer_login form.woocommerce-form-register {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 24px !important;
	background: linear-gradient(145deg, var(--bb-account-paper), #f5eff7);
	border: 1px solid var(--bb-account-line);
	border-radius: 16px;
	box-shadow: 0 9px 24px rgba(66, 33, 86, .08);
}
body.bbfaq-account-experience .woocommerce form .form-row { margin-bottom: 18px; }
body.bbfaq-account-experience .woocommerce form label { display: block; margin-bottom: 7px; color: var(--bb-account-ink); font-weight: 700; }
body.bbfaq-account-experience .woocommerce input.input-text,
body.bbfaq-account-experience .woocommerce input[type="email"],
body.bbfaq-account-experience .woocommerce input[type="password"],
body.bbfaq-account-experience .woocommerce select,
body.bbfaq-account-experience .woocommerce textarea {
	box-sizing: border-box; min-height: 46px; width: 100%; padding: 11px 13px;
	border: 1px solid var(--bb-account-line); border-radius: 10px; background: var(--bb-account-surface); color: var(--bb-account-ink);
}
body.bbfaq-account-experience .woocommerce .password-input input { padding-inline-end: 56px; }
body.bbfaq-account-experience .woocommerce input[type="checkbox"] { inline-size: 18px; block-size: 18px; accent-color: var(--bb-account-plum); vertical-align: middle; }
body.bbfaq-account-experience .woocommerce button:not(.show-password-input),
body.bbfaq-account-experience .woocommerce .button,
body.bbfaq-account-experience .woocommerce a.button {
	min-height: 44px; box-sizing: border-box; border: 1px solid var(--bb-account-plum); border-radius: 10px;
background: var(--bb-account-plum); color: var(--bb-account-paper); padding: 10px 17px; font-family: Montserrat, "BB Space Grotesk", sans-serif; font-weight: 700; text-decoration: none;
	transition: transform 150ms ease-out, box-shadow 150ms ease-out, background-color 150ms ease-out;
}
body.bbfaq-account-experience .woocommerce button:not(.show-password-input):hover,
body.bbfaq-account-experience .woocommerce .button:hover { transform: translateY(-1px); background: #30163e; box-shadow: 0 5px 12px rgba(33, 16, 39, .2); }
body.bbfaq-account-experience .woocommerce button:not(.show-password-input):active,
body.bbfaq-account-experience .woocommerce .button:active { transform: translateY(0); box-shadow: none; }
/* Keep WooCommerce's native password interaction compact and predictable. */
body.bbfaq-account-experience .woocommerce .password-input { position: relative; display: block; }
body.bbfaq-account-experience .woocommerce .password-input .show-password-input {
	position: absolute; z-index: 2; inset-block: 0; inset-inline-end: 0; display: inline-flex; align-items: center; justify-content: center;
	width: 48px; min-width: 48px; min-height: 100%; margin: 0; padding: 0; border: 0; border-radius: 0 10px 10px 0;
	background: transparent; color: var(--bb-account-plum); box-shadow: none; transform: none; font-size: 0; line-height: 1;
	transition: background-color 150ms ease-out, color 150ms ease-out;
}
body.bbfaq-account-experience .woocommerce .password-input .show-password-input:hover,
body.bbfaq-account-experience .woocommerce .password-input .show-password-input:active {
	background: rgba(138, 106, 173, .12); color: var(--bb-account-plum); box-shadow: none; transform: none;
}
body.bbfaq-account-experience .woocommerce .password-input .show-password-input:focus-visible {
	outline: 3px solid var(--bb-account-lavender);
	outline-offset: -4px;
	background: rgba(138, 106, 173, .14);
}
body.bbfaq-account-experience .woocommerce .password-input .show-password-input::before {
	content: ""; display: block; width: 20px; height: 20px; margin: 0;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 5c5.5 0 9.5 5.4 9.5 7s-4 7-9.5 7-9.5-7-9.5-7 4-7 9.5-7Zm0 2C8.9 7 6.2 9.5 4.8 12 6.2 14.5 8.9 17 12 17s5.8-2.5 7.2-5C17.8 9.5 15.1 7 12 7Zm0 1.8A3.2 3.2 0 1 1 12 15a3.2 3.2 0 0 1 0-6.2Zm0 2a1.2 1.2 0 1 0 0 2.4 1.2 1.2 0 0 0 0-2.4Z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 5c5.5 0 9.5 5.4 9.5 7s-4 7-9.5 7-9.5-7-9.5-7 4-7 9.5-7Zm0 2C8.9 7 6.2 9.5 4.8 12 6.2 14.5 8.9 17 12 17s5.8-2.5 7.2-5C17.8 9.5 15.1 7 12 7Zm0 1.8A3.2 3.2 0 1 1 12 15a3.2 3.2 0 0 1 0-6.2Zm0 2a1.2 1.2 0 1 0 0 2.4 1.2 1.2 0 0 1 0-2.4Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
body.bbfaq-account-experience .woocommerce .password-input .show-password-input.display-password::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m3.3 2 18.7 18.7-1.3 1.3-3.2-3.2A11.8 11.8 0 0 1 12 20C6.5 20 2.5 14.6 2.5 13c0-.9 1.3-3 3.4-4.7L2 3.3 3.3 2Zm4 7.7C5.9 10.8 4.9 12.2 4.5 13c1.4 2.5 4.1 5 7.5 5 1.4 0 2.7-.4 3.9-1l-1.7-1.7A4 4 0 0 1 9.7 11L7.3 9.7ZM12 6c5.5 0 9.5 5.4 9.5 7 0 .7-.8 2.1-2.2 3.5l-1.4-1.4c.8-.8 1.4-1.6 1.6-2.1-1.4-2.5-4.1-5-7.5-5-.5 0-1 0-1.5.2L8.9 6.6A11 11 0 0 1 12 6Z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m3.3 2 18.7 18.7-1.3 1.3-3.2-3.2A11.8 11.8 0 0 1 12 20C6.5 20 2.5 14.6 2.5 13c0-.9 1.3-3 3.4-4.7L2 3.3 3.3 2Zm4 7.7C5.9 10.8 4.9 12.2 4.5 13c1.4 2.5 4.1 5 7.5 5 1.4 0 2.7-.4 3.9-1l-1.7-1.7A4 4 0 0 1 9.7 11L7.3 9.7ZM12 6c5.5 0 9.5 5.4 9.5 7 0 .7-.8 2.1-2.2 3.5l-1.4-1.4c.8-.8 1.4-1.6 1.6-2.1-1.4-2.5-4.1-5-7.5-5-.5 0-1 0-1.5.2L8.9 6.6A11 11 0 0 1 12 6Z'/%3E%3C/svg%3E");
}
body.bbfaq-account-experience .woocommerce .u-column2 button,
body.bbfaq-account-experience .woocommerce .u-column2 .button { background: transparent; color: var(--bb-account-plum); }
body.bbfaq-account-experience .woocommerce .woocommerce-info,
body.bbfaq-account-experience .woocommerce .woocommerce-message,
body.bbfaq-account-experience .woocommerce .woocommerce-error {
	position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 16px;
min-width: 0; margin: 0 0 22px; padding: 14px 16px 14px 48px; border: 1px solid #ddd2df; border-inline-start: 1px solid var(--bb-account-plum);
	border-radius: 9px; background: #fbf8fb; color: var(--bb-account-ink); box-shadow: none;
}
body.bbfaq-account-experience .woocommerce .woocommerce-info { border-inline-start-color: var(--bb-account-lavender); background: #fbf8fb; }
body.bbfaq-account-experience .woocommerce .woocommerce-error { border-inline-start-color: #b96068; background: #fff5f2; }
body.bbfaq-account-experience .woocommerce .woocommerce-message { border-inline-start-color: #6b8b20; background: #f7f8f0; }
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)::before {
	content: "";
	position: absolute;
	inset-inline-start: 16px;
	inset-block-start: 50%;
	display: block;
	width: 18px;
	height: 18px;
	margin: 0;
	transform: translateY(-50%);
	background: currentColor;
	line-height: 1;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm0 4a1.15 1.15 0 1 1 0 2.3A1.15 1.15 0 0 1 12 6Zm-1.1 5h2.2v7h-2.2v-7Z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm0 4a1.15 1.15 0 1 1 0 2.3A1.15 1.15 0 0 1 12 6Zm-1.1 5h2.2v7h-2.2v-7Z'/%3E%3C/svg%3E") center / contain no-repeat;
	color: var(--bb-account-plum);
}
body.bbfaq-account-experience .woocommerce .woocommerce-error::before {
	background: #b96068;
	color: #b96068;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2 1.5 21h21L12 2Zm-1.1 6h2.2v6h-2.2V8Zm0 8h2.2v2.2h-2.2V16Z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2 1.5 21h21L12 2Zm-1.1 6h2.2v6h-2.2V8Zm0 8h2.2v2.2h-2.2V16Z'/%3E%3C/svg%3E");
}
body.bbfaq-account-experience .woocommerce .woocommerce-message::before {
	background: #6b8b20;
	color: #6b8b20;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m9.2 17.3-5-5 1.6-1.6 3.4 3.4 8.9-8.9 1.6 1.6-10.5 10.5Z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m9.2 17.3-5-5 1.6-1.6 3.4 3.4 8.9-8.9 1.6 1.6-10.5 10.5Z'/%3E%3C/svg%3E");
}
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) > .button {
	grid-column: 2;
	grid-row: 1;
	align-self: center;
	justify-self: end;
	box-shadow: none;
	transform: none;
	transition: background-color 150ms ease-out, border-color 150ms ease-out, color 150ms ease-out;
	float: none;
	margin: 0;
	max-width: 100%;
	overflow-wrap: normal;
	word-break: normal;
	white-space: normal;
}
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) > :not(.button) {
	min-width: 0;
	max-width: 100%;
	overflow-wrap: normal;
	word-break: normal;
}
/* WooCommerce can emit the action before a bare text node. Keep the native
 * button in the first grid row and give moved/original copy one stable cell,
 * so both Orders variants paint icon, copy and action as one desktop row. */
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
	> .bbfaq-account-notice-copy,
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
	> [data-bbfaq-account-notice-row] > .bbfaq-account-notice-copy {
	grid-column: 1;
	grid-row: 1;
	min-width: 0;
	max-width: 100%;
	overflow-wrap: normal;
	word-break: normal;
}
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
	> [data-bbfaq-account-notice-row] {
	display: grid;
	grid-column: 1 / -1;
	grid-row: 1;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	column-gap: 16px;
	min-width: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
	> [data-bbfaq-account-notice-row] > .button {
	grid-column: 2;
	grid-row: 1;
}
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
	> :is(button, input[type="submit"], input[type="button"]) {
	grid-column: 2;
	grid-row: 1;
	align-self: center;
	justify-self: end;
}
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
	> [data-bbfaq-account-notice-row] > :is(button, input[type="submit"], input[type="button"]) {
	grid-column: 2;
	grid-row: 1;
	align-self: center;
	justify-self: end;
}
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
	:is(.button, button, input[type="submit"], input[type="button"]) {
	box-shadow: none;
	transform: none;
	transition: background-color 150ms ease-out, border-color 150ms ease-out, color 150ms ease-out;
	max-width: 100%;
	overflow-wrap: normal;
	word-break: normal;
	white-space: normal;
}
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) > .button:hover,
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) > .button:active {
	box-shadow: none;
	transform: none;
}
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
	:is(.button, button, input[type="submit"], input[type="button"]):hover,
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
	:is(.button, button, input[type="submit"], input[type="button"]):active {
	box-shadow: none;
	transform: none;
}
/*
 * Native theme button rules are important. Match that cascade strength only
 * inside member notices; do not change authentication or business handlers.
 */
body.bbfaq-account-experience.bbfaq-account-member .woocommerce .woocommerce-MyAccount-content
:is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
:is(a.button, button, input[type="submit"], input[type="button"]) {
box-sizing: border-box;
min-height: 44px !important;
height: auto !important;
min-width: 0 !important;
max-width: 100% !important;
width: auto !important;
padding: 10px 16px !important;
border-radius: 8px !important;
font-size: 14px !important;
line-height: 1.35 !important;
text-transform: none !important;
white-space: normal !important;
box-shadow: none !important;
text-shadow: none !important;
transform: none !important;
}
body.bbfaq-account-experience.bbfaq-account-member .woocommerce .woocommerce-MyAccount-content
:is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
:is(a.button, button, input[type="submit"], input[type="button"]):is(:hover, :active, :focus) {
box-shadow: none !important;
transform: none !important;
}
body.bbfaq-account-experience .woocommerce-MyAccount-navigation {
	/*
	 * Shared contract with account-experience.js: desktop sizing depends on
	 * the viewport, never the scroll position. JavaScript measures
	 * the final computed rail only to decide whether sticky can be enabled.
	 */
	box-sizing: border-box; float: left; width: 29%; min-width: 0; padding: 8px 10px 7px; border-radius: 22px;
	background: var(--bb-account-plum); font-family: Montserrat, "BB Space Grotesk", sans-serif;
}
/*
 * The native illustration is owned by the provider/theme. On desktop only,
 * size its existing pseudo-element from the viewport, not the header or
 * scroll state. Content, image and display remain provider-owned. The
 * 120–160px artwork leaves room for the complete menu in laptop windows;
 * containment preserves the whole bitmap. At a fixed viewport its size
 * never changes during scrolling, header transitions or endpoint changes.
 */
@media (min-width: 861px) {
	body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation::after {
		box-sizing: border-box;
		background-size: contain !important;
		background-repeat: no-repeat !important;
		background-position: center !important;
		min-height: 100px !important;
		max-height: 134px !important;
		height: 134px !important;
		height: clamp(100px, calc(100vh - 516px), 134px) !important;
		margin-top: 8px !important;
	}
}
body.bbfaq-account-experience .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; }
body.bbfaq-account-experience .woocommerce-MyAccount-navigation li { margin: 0 0 3px; border: 0; }
body.bbfaq-account-experience .woocommerce-MyAccount-navigation li:last-child { margin-bottom: 0; }
body.bbfaq-account-experience .woocommerce-MyAccount-navigation a {
	position: relative; min-height: 44px; box-sizing: border-box; padding: 0 5px;
	color: var(--bb-account-paper); border-radius: 8px; text-decoration: none; font-weight: 600; line-height: 24px; transition: background-color 160ms ease-out, color 160ms ease-out, box-shadow 160ms ease-out;
}
@media (min-width: 861px) {
	body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation > ul > li:not(:last-child) {
		margin-bottom: 2px;
	}
	body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation > ul > li > a {
		min-height: 38px;
		font-size: 14px;
		line-height: 21px;
	}
}
body.bbfaq-account-experience .woocommerce-MyAccount-navigation li:not(.is-active) > a:hover {
background: var(--bb-account-plum); color: var(--bb-account-gold); box-shadow: none;
}
body.bbfaq-account-experience .woocommerce-MyAccount-navigation .is-active > a { background: #fff; color: var(--bb-account-plum) !important; font-weight: 600; box-shadow: none; }
/* The current native endpoint rests on paper, then joins the gold-on-plum
   interaction language without losing WooCommerce's active rail marker. */
body.bbfaq-account-experience .woocommerce-MyAccount-navigation .is-active > a:hover,
body.bbfaq-account-experience .woocommerce-MyAccount-navigation .is-active > a:focus-visible {
	background: #fff;
	color: #856d31 !important;
	box-shadow: none;
}
body.bbfaq-account-experience .woocommerce-MyAccount-navigation .is-active > a:focus-visible {
	outline: 3px solid var(--bb-account-gold);
	outline-offset: 2px;
}
/* Production rail has no added active marker. Link-owned native ::before icons
   deliberately remain untouched. */
body.bbfaq-account-experience .woocommerce-MyAccount-navigation .is-active > a::after { content: none; display: none; }
body.bbfaq-account-experience .woocommerce-MyAccount-navigation li:not(.is-active) > a:focus-visible {
background: var(--bb-account-plum);
	color: var(--bb-account-gold);
	outline: 3px solid var(--bb-account-gold);
	outline-offset: 2px;
	box-shadow: none;
}
body.bbfaq-account-experience .woocommerce-MyAccount-navigation li:not(.is-active) > a:hover::before,
body.bbfaq-account-experience .woocommerce-MyAccount-navigation li:not(.is-active) > a:focus-visible::before { color: var(--bb-account-paper); }
body.bbfaq-account-experience .woocommerce-MyAccount-navigation .is-active > a:hover::before,
body.bbfaq-account-experience .woocommerce-MyAccount-navigation .is-active > a:focus-visible::before { color: var(--bb-account-lavender); }
body.bbfaq-account-experience .woocommerce-MyAccount-navigation-link--customer-logout a::before {
	content: "";
	display: inline-block;
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin-right: 0;
	vertical-align: middle;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 3a1 1 0 0 1 1 1v1H7v14h4v1a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h4Zm7.7 4.3 4 4a1 1 0 0 1 0 1.4l-4 4-1.4-1.4 2.3-2.3H10v-2h8.6l-2.3-2.3 1.4-1.4Z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 3a1 1 0 0 1 1 1v1H7v14h4v1a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h4Zm7.7 4.3 4 4a1 1 0 0 1 0 1.4l-4 4-1.4-1.4 2.3-2.3H10v-2h8.6l-2.3-2.3 1.4-1.4Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
body.bbfaq-account-experience .woocommerce-MyAccount-content { float: right; width: calc(71% - 20px); min-width: 0; }
/* Dashboard facts are supplied by WooCommerce; this panel never manufactures
   balances, totals, prompts or a loyalty substitute. */
body.bbfaq-account-experience .bb-account-overview {
	margin: 28px 0 0;
	padding: clamp(18px, 3vw, 28px);
	border: 1px solid var(--bb-account-line);
	border-radius: 18px;
	background: linear-gradient(135deg, #fffdf8, #f6eef4);
	box-shadow: 0 10px 24px rgba(67, 42, 73, .07);
}
body.bbfaq-account-experience .bb-account-overview__heading,
body.bbfaq-account-experience .bb-account-overview__panel-heading,
body.bbfaq-account-experience .bb-account-overview__order,
body.bbfaq-account-experience .bb-account-overview__address-list li {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
}
body.bbfaq-account-experience .bb-account-overview__eyebrow {
	margin: 0 0 5px;
	color: #765d27;
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}
body.bbfaq-account-experience .bb-account-overview h2,
body.bbfaq-account-experience .bb-account-overview h3 { margin: 0; color: var(--bb-account-plum); }
body.bbfaq-account-experience .bb-account-overview h2 { font-size: clamp(1.45rem, 3vw, 1.9rem); }
body.bbfaq-account-experience .bb-account-overview h3 { font-size: 1rem; }
body.bbfaq-account-experience .bb-account-overview__member-since,
body.bbfaq-account-experience .bb-account-overview__quiet {
	margin: 0;
	color: var(--bb-account-muted);
	font-size: .88rem;
	line-height: 1.55;
}
body.bbfaq-account-experience .bb-account-overview__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-top: 20px;
}
body.bbfaq-account-experience .bb-account-overview__panel {
	min-width: 0;
	padding: 18px;
	border: 1px solid rgba(226, 219, 228, .9);
	border-radius: 13px;
	background: rgba(255, 255, 255, .7);
}
body.bbfaq-account-experience .bb-account-overview__panel-heading a,
body.bbfaq-account-experience .bb-account-overview__details-link {
	color: #765d27;
	font-size: .82rem;
	font-weight: 800;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
body.bbfaq-account-experience .bb-account-overview__order-list,
body.bbfaq-account-experience .bb-account-overview__address-list { margin: 16px 0 0; padding: 0; list-style: none; }
body.bbfaq-account-experience .bb-account-overview__order {
	padding: 10px 0;
	border-top: 1px solid var(--bb-account-line);
}
body.bbfaq-account-experience .bb-account-overview__order:first-child { border-top: 0; padding-top: 0; }
body.bbfaq-account-experience .bb-account-overview__order div { min-width: 0; }
body.bbfaq-account-experience .bb-account-overview__order :is(a, span) { display: block; overflow-wrap: anywhere; }
body.bbfaq-account-experience .bb-account-overview__order small { display: block; margin-top: 3px; color: var(--bb-account-muted); font-size: .76rem; }
body.bbfaq-account-experience .bb-account-overview__status {
	flex: 0 1 auto;
	padding: 3px 7px;
	border: 1px solid #d9c99e;
	border-radius: 999px;
	color: #5d4a20;
	font-size: .7rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}
body.bbfaq-account-experience .bb-account-overview__address-list li { padding: 9px 0; border-top: 1px solid var(--bb-account-line); color: var(--bb-account-muted); font-size: .88rem; }
body.bbfaq-account-experience .bb-account-overview__address-list li:first-child { border-top: 0; padding-top: 0; }
body.bbfaq-account-experience .bb-account-overview__address-list strong { color: var(--bb-account-plum); font-size: .82rem; white-space: nowrap; }
body.bbfaq-account-experience .bb-account-overview__details-link { display: inline-block; margin-top: 16px; }
/* Exact WPLoyalty 1.4.5 member renderer contract. This is a presentation skin
   around provider data and controls only: no balance, rule, opportunity or
   redemption content is added by the account layer. */
body.bbfaq-account-experience .woocommerce-MyAccount-content > .wlr-myaccount-page {
	position: relative;
	isolation: isolate;
	box-sizing: border-box;
	max-width: 100%;
	margin: 0;
	padding: clamp(18px, 3vw, 30px);
	border: 1px solid var(--bb-account-line);
	border-radius: 18px;
	background: linear-gradient(145deg, #fffdf8, #f5edf5);
	box-shadow: 0 12px 28px rgba(67, 42, 73, .08);
	overflow: visible;
}
body.bbfaq-account-experience .woocommerce-MyAccount-content > .wlr-myaccount-page::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 18px;
	right: clamp(18px, 6vw, 70px);
	width: 82px;
	height: 82px;
	border: 1px solid rgba(184, 157, 92, .46);
	border-radius: 50%;
	box-shadow: 25px -12px 0 -24px rgba(138, 106, 173, .62);
	pointer-events: none;
}
body.bbfaq-account-experience .wlr-myaccount-page .wlr-user-details { margin: 0 0 20px; }
body.bbfaq-account-experience .wlr-myaccount-page .wlr-heading-container {
	padding: 0 0 16px;
	border-bottom: 2px solid var(--bb-account-gold);
}
body.bbfaq-account-experience .wlr-myaccount-page h3.wlr-heading {
	margin: 0;
	padding-right: 90px;
	color: var(--bb-account-plum);
	font-family: Montserrat, "BB Space Grotesk", sans-serif;
	font-size: clamp(1.45rem, 3vw, 2rem);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -.025em;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}
body.bbfaq-account-experience .wlr-myaccount-page .wlr-points-container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
	gap: 12px;
	margin-top: 20px;
}
body.bbfaq-account-experience .wlr-myaccount-page :is(#wlr-available-points, #wlr-redeemed-points, #wlr-used-rewards) {
	box-sizing: border-box;
	min-width: 0;
	padding: 17px;
	border: 1px solid var(--bb-account-line);
	border-radius: 13px;
	background: rgba(255, 253, 248, .86);
}
body.bbfaq-account-experience .wlr-myaccount-page :is(#wlr-available-points-heading, #wlr-redeemed-points-heading, #wlr-used-rewards-heading) {
	display: block;
	color: var(--bb-account-muted);
	font-family: Montserrat, "BB Space Grotesk", sans-serif;
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .08em;
	line-height: 1.35;
	text-transform: uppercase;
}
body.bbfaq-account-experience .wlr-myaccount-page :is(#wlr-available-point-value, #wlr-redeemed-point-value, #wlr-used-reward-value-count) {
	display: block;
	margin-top: 8px;
	color: var(--bb-account-plum);
	font-family: "BB Space Grotesk", Montserrat, sans-serif;
	font-size: clamp(1.5rem, 3.8vw, 2.3rem);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -.04em;
}
body.bbfaq-account-experience .wlr-myaccount-page :is(form, table) { max-width: 100%; }
/* Only the signed-in native Woo shell receives a two-column layout.  Guest
   login/register markup and vendor widgets remain outside this constraint. */
body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) {
	display: flex;
	align-items: flex-start;
	gap: clamp(16px, 2.5vw, 28px);
	/* Member endpoints may use the masthead's otherwise unused desktop measure. */
	width: min(1200px, calc(100% - clamp(24px, 5vw, 72px)));
	max-width: 1200px;
}
body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation)::before,
body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation)::after {
	content: none;
}
body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation {
	float: none;
	flex: 0 0 224px;
	width: 224px;
	min-width: 224px;
	max-width: 224px;
}
body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content {
	float: none;
	flex: 1 1 0;
	width: auto;
	min-width: 0;
}
/* Route-invariant member rail: the affiliate wrapper may remove content
   padding, but it must never renegotiate the rail's desktop/tablet geometry. */
@media (min-width: 768px) {
	body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation {
		flex: 0 0 224px;
		width: 224px;
		min-width: 224px;
		max-width: 224px;
	}
	body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content {
		flex: 1 1 0;
		min-width: 0;
	}
}
body.bbfaq-account-experience .woocommerce-MyAccount-content > *:first-child { margin-top: 0; }
body.bbfaq-account-experience .woocommerce .woocommerce-Address,
body.bbfaq-account-experience .woocommerce fieldset { margin: 22px 0; padding: 22px; border: 1px solid var(--bb-account-line); border-radius: 14px; background: #fffdf7; }
/* Stretch WooCommerce's billing/shipping cards in one row. Native col-1/col-2
   floats and width caps must not shrink a grid item below its shared track. */
body.bbfaq-account-experience .woocommerce-MyAccount-content .woocommerce-Addresses {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
	align-items: stretch;
	gap: 22px;
}
/* Woo's clearfix pseudo-elements otherwise become grid items, pushing the
   two real cards into different rows despite the two-column track. */
body.bbfaq-account-experience .woocommerce-MyAccount-content .woocommerce-Addresses::before,
body.bbfaq-account-experience .woocommerce-MyAccount-content .woocommerce-Addresses::after {
	display: none !important;
	content: none !important;
}
body.bbfaq-account-experience .woocommerce-MyAccount-content .woocommerce-Addresses > .woocommerce-Address {
	box-sizing: border-box;
	float: none !important;
	flex: none !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0;
	height: auto;
	margin: 0 !important;
}
/* Both native headings share one line and one baseline in the narrowest
   two-column desktop layout. The grid still stacks when two cards cannot fit. */
body.bbfaq-account-experience .woocommerce-MyAccount-content
 .woocommerce-Addresses > .woocommerce-Address .woocommerce-Address-title h2 {
	margin-top: 0;
	font-size: clamp(1.125rem, 1.5vw, 1.375rem);
	line-height: 1.3;
	white-space: nowrap;
}
body.bbfaq-account-experience .woocommerce fieldset legend { padding: 0 7px; font-size: 1.15rem; font-weight: 700; }
body.bbfaq-account-experience .woocommerce table { width: 100%; max-width: 100%; overflow: visible; border: 1px solid var(--bb-account-line); border-radius: 12px; border-spacing: 0; }
body.bbfaq-account-experience .woocommerce table th { padding: 13px; background: #eee2d2; color: var(--bb-account-muted); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
body.bbfaq-account-experience .woocommerce table td { padding: 14px 13px; border-color: var(--bb-account-line); }
body.bbfaq-account-experience #wll-site-launcher { display: none !important; }
body.bbfaq-account-experience .bb-account-vendor {
	padding: clamp(18px, 3vw, 30px);
	border: 1px solid var(--bb-account-line);
	border-radius: 18px;
	background: linear-gradient(145deg, #fffdf7, #f8eddb);
	box-shadow: 0 12px 30px rgba(66, 33, 86, .09);
}
body.bbfaq-account-experience .bb-account-vendor--referrals {
	padding: 0;
	overflow: hidden;
	background: var(--bb-account-paper);
	box-shadow: 0 18px 42px rgba(67, 42, 73, .13);
}
body.bbfaq-account-experience .bb-account-vendor--referrals .bb-account-vendor__header {
	position: relative;
	isolation: isolate;
	margin: 0;
	padding: clamp(22px, 4vw, 34px);
	border-bottom: 3px solid var(--bb-account-gold);
	background: linear-gradient(125deg, var(--bb-account-night), var(--bb-account-plum) 62%, #684b70);
	overflow: hidden;
}
body.bbfaq-account-experience .bb-account-vendor--referrals .bb-account-vendor__header::before,
body.bbfaq-account-experience .bb-account-vendor--referrals .bb-account-vendor__header::after {
	content: "";
	position: absolute;
	z-index: -1;
	pointer-events: none;
	border: 1px solid rgba(184, 157, 92, .35);
	border-radius: 50%;
}
body.bbfaq-account-experience .bb-account-vendor--referrals .bb-account-vendor__header::before {
	right: clamp(18px, 7vw, 92px);
	bottom: -78px;
	width: 176px;
	height: 176px;
	box-shadow: 42px -28px 0 -41px rgba(184, 157, 92, .55), -65px 21px 0 -64px rgba(218, 198, 226, .4);
}
body.bbfaq-account-experience .bb-account-vendor--referrals .bb-account-vendor__header::after {
	top: -74px;
	right: -36px;
	width: 126px;
	height: 126px;
	border-color: rgba(218, 198, 226, .22);
}
body.bbfaq-account-experience .bb-account-vendor--referrals .bb-account-vendor__eyebrow { color: var(--bb-account-gold); }
body.bbfaq-account-experience .bb-account-vendor--referrals .bb-account-vendor__title { color: var(--bb-account-paper); }
body.bbfaq-account-experience .bb-account-vendor--referrals .bb-account-vendor__intro { color: var(--bb-account-paper); }
body.bbfaq-account-experience .bb-account-vendor--referrals .bb-account-vendor__content { padding: clamp(18px, 3vw, 30px); }
body.bbfaq-account-experience .bb-account-vendor__header {
	margin: 0 0 24px;
	padding: 0 0 20px;
	border-bottom: 1px solid var(--bb-account-line);
}
body.bbfaq-account-experience .bb-account-vendor__eyebrow {
	margin: 0 0 6px;
	color: #6b3386;
	font-size: .76rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}
body.bbfaq-account-experience .bb-account-vendor__title { margin: 0; font-size: clamp(1.55rem, 3vw, 2.1rem); }
body.bbfaq-account-experience .bb-account-vendor__intro { max-width: 58ch; margin: 9px 0 0; color: var(--bb-account-muted); }
body.bbfaq-account-experience #affwp-affiliate-dashboard {
	max-width: 100%;
	margin: 0;
	color: var(--bb-account-ink);
}
body.bbfaq-account-experience #affwp-affiliate-dashboard-tabs {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 7px;
	margin: 0 0 22px;
	padding: 7px;
	border: 1px solid var(--bb-account-line);
	border-radius: 12px;
	background: #f5eff7;
	list-style: none;
	overflow: visible;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard #affwp-affiliate-dashboard-tabs > li {
	flex: 1 1 9rem;
	margin: 0;
	padding: 0;
	min-width: 0;
}
body.bbfaq-account-experience #affwp-affiliate-dashboard-tabs a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	min-height: 40px;
	padding: 8px 10px;
	border-radius: 8px;
	color: var(--bb-account-plum);
	text-decoration: none;
	font-weight: 700;
	font-size: .84rem;
	line-height: 1.2;
	white-space: normal;
	overflow-wrap: normal;
	word-break: normal;
	transition: background-color 150ms ease-out, color 150ms ease-out, box-shadow 150ms ease-out;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-card__tooltip {
	display: inline-flex;
	flex: 0 0 24px;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-card__tooltip svg {
	display: block;
	width: 24px;
	max-width: 24px;
	height: 24px;
	max-height: 24px;
}
body.bbfaq-account-experience #affwp-affiliate-dashboard-tabs .active > a,
body.bbfaq-account-experience #affwp-affiliate-dashboard-tabs a.active,
body.bbfaq-account-experience #affwp-affiliate-dashboard-tabs a:hover {
	background: var(--bb-account-plum);
	color: var(--bb-account-paper);
	box-shadow: inset 0 -3px 0 var(--bb-account-gold);
}
body.bbfaq-account-experience #affwp-affiliate-dashboard .affwp-tab-content,
body.bbfaq-account-experience #affwp-affiliate-dashboard-url-generator,
body.bbfaq-account-experience .woocommerce-MyAccount-content :where(.wlr-myaccount-page, .wlr-my-account-page, [class*="wlr-customer"]) {
	box-sizing: border-box;
	max-width: 100%;
	padding: clamp(16px, 2.5vw, 24px);
	border: 1px solid var(--bb-account-line);
	border-radius: 14px;
	background: #fffdf7;
	box-shadow: 0 7px 20px rgba(67, 42, 73, .06);
	overflow: visible;
}
body.bbfaq-account-experience #affwp-affiliate-dashboard :where(label, legend) { color: var(--bb-account-plum); font-weight: 700; }
body.bbfaq-account-experience #affwp-affiliate-dashboard :where(input[type="text"], input[type="url"], input[type="email"], select, textarea) {
	box-sizing: border-box; min-height: 44px; max-width: 100%; border: 1px solid var(--bb-account-line);
	border-radius: 9px; background: var(--bb-account-paper); color: var(--bb-account-ink);
}
body.bbfaq-account-experience #affwp-affiliate-dashboard :where(.affwp-notice, .affwp-errors) {
	padding: 14px 16px; border: 1px solid var(--bb-account-line); border-inline-start: 4px solid var(--bb-account-gold);
	border-radius: 9px; background: #f8f3e8;
}
body.bbfaq-account-experience #affwp-affiliate-dashboard table:not(.bb-account-table--reflow),
body.bbfaq-account-experience .woocommerce-MyAccount-content :where(.wlr-myaccount-page, .wlr-my-account-page, [class*="wlr-customer"]) table {
	display: table;
	width: 100%;
	max-width: 100%;
}
/* AffiliateWP retains its native markup and actions; these rules only protect
   its data density and reading order inside the account referral surface. */
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table:not(.bb-account-table--reflow) {
	min-width: 0;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: auto;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table:not(.bb-account-table--reflow) :is(th, td) {
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}
/*
 * Only AffiliateWP's referral transaction cells carry these semantic hooks.
 * Stats, visits, payouts and other provider tables stay data-sized instead of
 * inheriting the referral table's six-column desktop density.
 */
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table:not(.bb-account-table--reflow):has(.referral-reference, .referral-description) :is(th, td) {
min-width: 0;
white-space: normal;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table:not(.bb-account-table--reflow):not(:has(.referral-reference, .referral-description)) :is(th, td) {
min-width: 0;
white-space: normal;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table:not(.bb-account-table--reflow):has(.referral-reference) :is(.referral-reference, th.referral-reference, td.referral-reference) {
min-width: 10.5rem;
white-space: nowrap;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table:not(.bb-account-table--reflow):has(.referral-date) :is(.referral-date, th.referral-date, td.referral-date) {
min-width: 5.5rem;
white-space: nowrap;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table:not(.bb-account-table--reflow):has(.referral-description) :is(.referral-description, th.referral-description, td.referral-description) {
min-width: 17rem;
white-space: normal;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table:not(.bb-account-table--reflow):has(.referral-status) :is(.referral-status, th.referral-status, td.referral-status) {
min-width: 6.75rem;
white-space: nowrap;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table:not(.bb-account-table--reflow):has(.referral-amount) :is(.referral-amount, th.referral-amount, td.referral-amount) {
min-width: 7.5rem;
white-space: nowrap;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table:not(.bb-account-table--reflow):has(.referral-campaign) :is(.referral-campaign, th.referral-campaign, td.referral-campaign) {
min-width: 8.75rem;
white-space: normal;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table:has(td[colspan]) :is(th, td) {
	min-width: 0;
	white-space: normal;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table td[colspan] {
	padding-block: clamp(22px, 4vw, 36px);
	color: var(--bb-account-muted);
	text-align: center;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard :is(.affwp-card, .affwp-no-referrals, .affwp-no-results, .affwp-empty-state) {
	border-color: var(--bb-account-line);
	box-shadow: none;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard :is(.affwp-card__header, .affwp-card__footer) {
	border-color: var(--bb-account-line);
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard :is(.affwp-card__header, .affwp-card__content, .affwp-card__footer) {
	padding-block: clamp(14px, 2vw, 20px);
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard :is(.affwp-card__header h2, .affwp-card__header h3, .affwp-tab-content h2, .affwp-tab-content h3) {
	color: var(--bb-account-plum);
	font-family: Montserrat, "BB Space Grotesk", sans-serif !important;
	font-size: clamp(1.25rem, 2.4vw, 1.6rem);
	font-style: normal;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -.02em;
	text-transform: none;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard :is(.affwp-card__header p, .affwp-tab-content > p, .affwp-empty-state p) {
	max-width: 65ch;
	color: var(--bb-account-muted);
	line-height: 1.55;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard :is(.affwp-pagination, .affwp-paging, .pagination) {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	margin-block: 20px 0;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard :is(.affwp-pagination, .affwp-paging, .pagination) :is(a, span) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.5rem;
	min-height: 2.5rem;
	padding-inline: .7rem;
	border: 1px solid var(--bb-account-line);
	border-radius: 8px;
	color: var(--bb-account-plum);
	font-weight: 700;
	text-decoration: none;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard :is(.affwp-pagination, .affwp-paging, .pagination) a:hover,
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard :is(.affwp-pagination, .affwp-paging, .pagination) a:focus-visible {
	border-color: var(--bb-account-gold);
	background: #fff7df;
	color: var(--bb-account-plum);
}
body.bbfaq-account-experience .woocommerce a:focus-visible,
body.bbfaq-account-experience .woocommerce button:focus-visible,
body.bbfaq-account-experience .woocommerce input:focus-visible,
body.bbfaq-account-experience .woocommerce select:focus-visible,
body.bbfaq-account-experience .woocommerce textarea:focus-visible { outline: 3px solid var(--bb-account-plum); outline-offset: 3px; }
@media (max-width: 991px) {
body.bbfaq-account-experience .woocommerce-MyAccount-content:has(.bbfaq-account-referrals) {
padding-inline: 0;
}
body.bbfaq-account-experience .bbfaq-account-referrals .bb-account-vendor__content {
padding: 12px;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard {
padding: 0;
}
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content,
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard-url-generator {
padding: 12px;
}
body.bbfaq-account-experience .bbfaq-account-referrals .affwp-card__header {
padding: 12px;
}
body.bbfaq-account-experience .bbfaq-account-referrals :is(.affwp-card__content, .affwp-card__footer) {
padding-inline: 12px;
}
body.bbfaq-account-experience .bbfaq-account-referrals .affwp-card__header :is(h3, p) {
overflow-wrap: normal;
word-break: normal;
}
body.bbfaq-account-experience .bbfaq-account-referrals :is(.affwp-affiliate-link__display, .affwp-link-sharing) {
flex-direction: column;
align-items: stretch;
}
body.bbfaq-account-experience .bbfaq-account-referrals .affwp-affiliate-link-copy-link {
width: 100%;
min-height: 44px;
white-space: nowrap;
}
}
@media (max-width: 360px) {
body.bbfaq-account-experience .bbfaq-account-referrals .bb-account-vendor__content,
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content,
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard-url-generator,
body.bbfaq-account-experience .bbfaq-account-referrals .affwp-card__header {
padding: 8px;
}
body.bbfaq-account-experience .bbfaq-account-referrals :is(.affwp-card__content, .affwp-card__footer) {
padding-inline: 8px;
}
/* Preserve FunnelKit's native cart target and event ownership while moving its
   compact 44px control beyond the account rail's usable label column. */
body.bbfaq-account-experience #fkcart-floating-toggler.fkcart-toggler {
	position: fixed;
	top: auto;
	right: 4px;
	bottom: max(36px, env(safe-area-inset-bottom));
	box-sizing: border-box;
	width: 44px;
	height: 44px;
	min-width: 44px;
	min-height: 44px;
}
body.bbfaq-account-experience #fkcart-floating-toggler.fkcart-toggler > .fkcart-floating-icon {
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	min-width: 0;
}
body.bbfaq-account-experience #fkcart-floating-toggler > #fkit-floating-count.fkcart-item-count {
	top: 0;
	right: auto;
	left: 0;
	transform: none;
}
}
/* Site Kit owns its Google GSI internals; only its account-local outer box lays out. */
body.bbfaq-account-experience .woocommerce .googlesitekit-sign-in-with-google__frontend-output-button {
	box-sizing: border-box;
	width: 100%;
	max-width: 420px;
	margin: 8px auto 0;
	padding: 3px;
	border-radius: 10px;
	text-align: center;
}
/* Dormant Nextend fallback: provider markup remains vendor-owned. */
body.bbfaq-account-experience .woocommerce .nsl-container { margin-top: 8px; }
body.bbfaq-account-experience .woocommerce .nsl-container .nsl-container-buttons a {
	display: block;
	width: 100%;
	max-width: none;
	min-height: 48px;
	margin-inline: 0;
}
body.bbfaq-account-experience .woocommerce .nsl-button-google {
	display: flex; align-items: center; min-height: 48px; box-sizing: border-box; width: 100%; padding: 0 12px;
	border: 1px solid #747775; border-radius: 4px; background: #fff !important; color: #1f1f1f !important; box-shadow: none;
	font-family: "Google Sans", Roboto, Arial, sans-serif; font-size: 14px; font-weight: 500; letter-spacing: .25px; text-decoration: none;
}
body.bbfaq-account-experience .woocommerce .nsl-button-google .nsl-button-svg-container {
	display: flex; flex: 0 0 20px; align-items: center; justify-content: center; width: 20px; margin: 0 10px 0 0; padding: 0;
}
body.bbfaq-account-experience .woocommerce .nsl-button-google .nsl-button-svg-container svg { width: 20px; height: 20px; }
body.bbfaq-account-experience .woocommerce .nsl-button-google .nsl-button-label-container {
	flex: 1 1 auto; margin: 0; padding: 0 30px 0 0; color: #1f1f1f; font-family: "Google Sans", Roboto, Arial, sans-serif; font-size: 14px; line-height: 20px; text-align: center;
}
body.bbfaq-account-experience .woocommerce .nsl-button-google:hover { border-color: #1f1f1f; background: #f8faff; box-shadow: 0 1px 2px rgba(60, 64, 67, .3); transform: none; }
body.bbfaq-account-experience .woocommerce .nsl-button-google:active { background: #f1f3f4; box-shadow: none; transform: none; }
body.bbfaq-account-experience .woocommerce-MyAccount-navigation.bbfaq-account-nav--sticky {
	position: sticky;
	top: var(
		--bbfaq-account-nav-top,
		calc(
			var(--bbfaq-account-nav-header-clearance, 0px) +
			var(--bbfaq-account-nav-outer-gap, 16px)
		)
	);
}
body.bbfaq-account-experience .bbfaq-account-nav-toggle {
	display: none;
}
body.bbfaq-account-experience .woocommerce.bbfaq-account-nav--compact:has(> .woocommerce-MyAccount-navigation) {
	display: flex;
	flex-direction: column;
}
body.bbfaq-account-experience .woocommerce.bbfaq-account-nav--compact > .bbfaq-account-nav-toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	order: -2;
	width: 100%;
	margin: 0 0 12px;
}
body.bbfaq-account-experience .woocommerce.bbfaq-account-nav--compact > .woocommerce-MyAccount-navigation {
	position: static;
	order: -1 !important;
	width: 100%;
	max-width: none;
	margin: 0 0 18px;
}
body.bbfaq-account-experience .woocommerce.bbfaq-account-nav--compact > .woocommerce-MyAccount-content {
	order: 0 !important;
	width: 100%;
	max-width: none;
}
body.bbfaq-account-experience .woocommerce.bbfaq-account-nav--compact > .woocommerce-MyAccount-navigation[hidden] {
	display: none !important;
}
@media (max-height: 720px) {
	body.bbfaq-account-experience .bb-account__mascot {
		right: 12px;
		bottom: 0;
		width: 96px;
		height: 96px;
	}
	body.bbfaq-account-experience .bb-account__masthead-copy {
		max-width: calc(100% - 112px);
	}
}
@media (max-width: 960px) {
	body.bbfaq-account-experience .woocommerce #customer_login { display: block !important; }
	body.bbfaq-account-experience .woocommerce #customer_login > .u-column1,
	body.bbfaq-account-experience .woocommerce #customer_login > .u-column2 {
		grid-column: auto !important;
		grid-row: auto !important;
		width: 100% !important;
		padding: 0 !important;
		border: 0 !important;
	}
	body.bbfaq-account-experience .woocommerce #customer_login > .u-column2 { margin-top: 28px !important; padding-top: 28px !important; border-top: 1px solid var(--bb-account-line) !important; }
}
@media (max-width: 860px) {
	/* Some themes reassert display:flex on this native dashboard shell. A column
	   direction and explicit child basis therefore protect the full-width tablet
	   layout without depending on winning the display declaration. */
	body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) {
		display: flex;
		flex-direction: column;
		gap: 0;
	}
	body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation,
	body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content {
		flex: 0 0 auto;
		width: 100%;
		min-width: 0;
		max-width: none;
	}
	body.bbfaq-account-member .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation {
		/* Beats the measured theme dashboard-only order:2 rule at narrow widths. */
		order: 1 !important;
		margin-bottom: 24px;
	}
	body.bbfaq-account-member .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content { order: 0 !important; }
	/* Signed-in account tools use safe 12px viewport gutters and a shallower
	   shell inset, returning space to native fields and the referral tab grid. */
	body.bbfaq-account-member .woocommerce:has(> .woocommerce-MyAccount-navigation) {
		width: calc(100% - 24px);
		max-width: none;
		padding: clamp(12px, 3vw, 16px);
	}
}
@media (max-width: 767px) {
	body.bbfaq-account-experience .bb-account__masthead { padding-bottom: 48px; border-radius: 0 0 18px 18px; }
	body.bbfaq-account-experience .bb-account__masthead-copy { max-width: calc(100% - 104px); }
	body.bbfaq-account-experience .bb-account__mascot { right: 8px; bottom: -8px; width: 118px; height: 118px; }
	body.bbfaq-account-experience .woocommerce { margin-top: -16px; padding: 20px; border-radius: 18px; }
	body.bbfaq-account-experience .woocommerce:has(> .woocommerce-MyAccount-navigation) { display: flex; flex-direction: column; }
	body.bbfaq-account-experience .woocommerce-MyAccount-navigation, body.bbfaq-account-experience .woocommerce-MyAccount-content { float: none; width: 100%; max-width: none; }
	body.bbfaq-account-experience .woocommerce-MyAccount-navigation { min-width: 0; margin-bottom: 24px; }
	body.bbfaq-account-experience .woocommerce #customer_login { display: block; }
	body.bbfaq-account-experience .u-column1, body.bbfaq-account-experience .u-column2 { width: 100%; padding: 0; border: 0; }
	body.bbfaq-account-experience .u-column2 { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--bb-account-line); }
	body.bbfaq-account-experience .woocommerce #customer_login form.woocommerce-form-login,
	body.bbfaq-account-experience .woocommerce #customer_login form.woocommerce-form-register { padding: 18px !important; }
	/* Native Woo edit-account fields retain their source order. The theme's
	   desktop floats otherwise leave both name controls in narrow half-columns
	   on a phone, making the labels and input edges appear misaligned. */
	body.bbfaq-account-experience .woocommerce-EditAccountForm.edit-account
		> :is(p.woocommerce-form-row--first, p.woocommerce-form-row--last) {
		box-sizing: border-box;
		float: none !important;
		width: 100% !important;
		margin-inline: 0 !important;
	}
	body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 13px;
		padding: 15px 15px 15px 47px;
	}
	body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) > .button {
		grid-column: 1;
		justify-self: start;
	}
	body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
		> :is(button, input[type="submit"], input[type="button"]) {
		grid-column: 1;
		justify-self: start;
	}
	body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
		> [data-bbfaq-account-notice-row] {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 13px;
	}
	body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
		> [data-bbfaq-account-notice-row] > .bbfaq-account-notice-copy {
		grid-column: 1;
		grid-row: 1;
	}
	body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
> :is(.button, button, input[type="submit"], input[type="button"]),
body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)
		> [data-bbfaq-account-notice-row] > :is(.button, button, input[type="submit"], input[type="button"]) {
		grid-column: 1;
		grid-row: 2;
		justify-self: start;
	}
	body.bbfaq-account-experience .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)::before {
		inset-inline-start: 15px;
		inset-block-start: 22px;
		transform: none;
	}
	body.bbfaq-account-experience .woocommerce table.shop_table_responsive { display: table; max-width: 100%; overflow: visible; }
	body.bbfaq-account-experience .bb-account-overview__grid { grid-template-columns: 1fr; }
	body.bbfaq-account-experience .wlr-myaccount-page .wlr-points-container { grid-template-columns: 1fr; gap: 9px; }
	body.bbfaq-account-experience .wlr-myaccount-page :is(#wlr-available-points, #wlr-redeemed-points, #wlr-used-rewards) { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; }
	body.bbfaq-account-experience .wlr-myaccount-page :is(#wlr-available-point-value, #wlr-redeemed-point-value, #wlr-used-reward-value-count) { flex: 0 0 auto; margin-top: 0; }
}
/* Applied by the account script to the real content column, rather than a
   viewport breakpoint: tables remain readable in narrow desktop side panels. */
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow {
	display: block;
	border: 0;
	border-radius: 0;
}
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow,
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow tbody,
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow tr,
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow td { box-sizing: border-box; width: 100%; max-width: 100%; }
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow tbody { display: block; }
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow tr {
	display: block;
	margin: 0 0 14px;
	padding: 8px 14px;
	border: 1px solid var(--bb-account-line);
	border-radius: 12px;
	background: #fffdf8;
}
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow td {
	display: block;
	padding: 9px 0;
	border: 0;
	border-top: 1px solid rgba(226, 219, 228, .8);
overflow-wrap: normal;
	word-break: normal;
	text-align: start !important;
}
/* Must win against AffiliateWP's dense six-column desktop presentation when
   JavaScript has selected the labelled record layout. Nothing is clipped. */
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard .affwp-tab-content > table.bb-account-table--reflow :is(th, td),
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow :is(th, td) {
	min-width: 0;
	max-width: 100%;
	white-space: normal;
	overflow: visible;
overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow td:first-child { border-top: 0; }
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow td::before {
	content: attr(data-bb-account-label);
	display: block;
	margin-bottom: 4px;
	color: var(--bb-account-muted);
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .06em;
	line-height: 1.4;
	text-transform: uppercase;
}
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow td[colspan] { display: block; text-align: center !important; }
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow td[colspan]:not([data-bb-account-label])::before { display: none; }
body.bbfaq-account-experience .woocommerce table.bb-account-table--reflow :is(.button, button) { max-width: 100%; white-space: normal; }
@media (max-width: 390px) {
	body.bbfaq-account-experience .bb-account-overview { padding: 16px; }
	body.bbfaq-account-experience .bb-account-overview__heading,
	body.bbfaq-account-experience .bb-account-overview__panel-heading { align-items: flex-start; flex-direction: column; gap: 6px; }
	body.bbfaq-account-experience .bb-account-overview__panel { padding: 14px; }
	body.bbfaq-account-experience .bb-account-overview__status { max-width: 48%; overflow-wrap: anywhere; }
}
@media (max-width: 480px) {
	/* Two ordinary label cells are preferable to a long single-file menu; labels
	   may wrap at spaces but never break within a word or shrink. */
	body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard #affwp-affiliate-dashboard-tabs > li {
		flex-basis: calc((100% - 7px) / 2);
	}
}
@media (prefers-reduced-motion: reduce) { body.bbfaq-account-experience .woocommerce *, body.bbfaq-account-experience .woocommerce *::before, body.bbfaq-account-experience .woocommerce *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; } }
@media (forced-colors: active) { body.bbfaq-account-experience .woocommerce-MyAccount-navigation a:focus-visible, body.bbfaq-account-experience .woocommerce input:focus-visible { outline: 3px solid Highlight; } }

/* Account provider containment corrections.
 *
 * WPLoyalty's page is both the endpoint panel and one of the generic provider
 * surfaces above.  The latter used to apply a second padded card to the same
 * node, reducing the usable measure enough for its native point labels and
 * detail controls to collide.  Keep the provider's own DOM and actions intact;
 * this is deliberately limited to the verified 1.4.5 page contract. */
body.bbfaq-account-experience .woocommerce-MyAccount-content > .wlr-myaccount-page {
	container-type: inline-size;
	padding: clamp(18px, 3vw, 30px);
	overflow: visible;
}
body.bbfaq-account-experience .wlr-myaccount-page .wlr-points-container,
body.bbfaq-account-experience .wlr-myaccount-page #wlr-points {
	min-width: 0;
	max-width: 100%;
}
/* WPLoyalty 1.4.5 renders the three metric cards inside #wlr-points (not
   directly in .wlr-points-container). Own that verified grid so Redeemed
   BudPoints cannot inherit a different track from its two native siblings. */
body.bbfaq-account-experience .wlr-myaccount-page #wlr-points {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: 14px;
}
body.bbfaq-account-experience .wlr-myaccount-page #wlr-points
	> :is(#wlr-available-points, #wlr-redeemed-points, #wlr-used-rewards) {
	display: grid;
	grid-template-rows: 52px minmax(0, 1fr);
	width: 100% !important;
	min-width: 0;
	min-height: 8.5rem;
	align-items: start;
	align-content: space-between;
	gap: 12px;
	overflow: visible;
}
body.bbfaq-account-experience .wlr-myaccount-page #wlr-points
	> :is(#wlr-available-points, #wlr-redeemed-points, #wlr-used-rewards) > :first-child {
	width: 100%;
	min-width: 0;
}
body.bbfaq-account-experience .wlr-myaccount-page #wlr-used-rewards > :first-child {
	display: flex;
	align-items: center;
	justify-content: space-between !important;
	gap: 12px;
}
body.bbfaq-account-experience .wlr-myaccount-page #wlr-used-rewards > div:first-child > div:first-child {
	flex: 0 0 auto;
	flex-basis: 52px;
}
body.bbfaq-account-experience .wlr-myaccount-page #wlr-used-rewards > div:first-child > div:nth-child(2) {
	flex: 1 1 auto;
	min-width: 0;
	max-width: calc(100% - 64px);
}
body.bbfaq-account-experience .wlr-myaccount-page #wlr-used-rewards > div:first-child > div:nth-child(2) #wlr_currency_list {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}
body.bbfaq-account-experience .wlr-myaccount-page :is(#wlr-available-points-heading, #wlr-redeemed-points-heading, #wlr-used-rewards-heading),
body.bbfaq-account-experience .wlr-myaccount-page :is(#wlr-available-point-value, #wlr-redeemed-point-value, #wlr-used-reward-value-count) {
	max-width: 100%;
	overflow: visible;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}
body.bbfaq-account-experience .wlr-myaccount-page :is(#wlr-available-points-heading, #wlr-redeemed-points-heading, #wlr-used-rewards-heading) {
	white-space: nowrap;
}
@container (max-width: 34rem) {
	body.bbfaq-account-experience .wlr-myaccount-page h3.wlr-heading {
		padding-right: 0;
		white-space: nowrap;
	}
	body.bbfaq-account-experience .wlr-myaccount-page #wlr-points {
		grid-template-columns: 1fr;
	}
	body.bbfaq-account-experience .wlr-myaccount-page #wlr-points
		> :is(#wlr-available-points, #wlr-redeemed-points, #wlr-used-rewards) {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: 52px minmax(0, 1fr);
		min-height: 8.5rem;
		align-items: start;
		align-content: space-between;
	}
}

/* Native dashboard rail icons use three different paint contracts. Keep
 * inactive Font Awesome glyphs and mask icons light on the plum rail, and
 * constrain SVG paint without overriding explicit fill/stroke-none artwork. */
body.bbfaq-account-experience .woocommerce-MyAccount-navigation :is(
	.woocommerce-MyAccount-navigation-link--referrals,
	.woocommerce-MyAccount-navigation-link--loyalty_reward
):not(.is-active) > a::before {
	color: var(--bb-account-paper);
}
body.bbfaq-account-experience .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--customer-logout:not(.is-active) > a::before {
	background-color: var(--bb-account-paper);
}
body.bbfaq-account-experience .woocommerce-MyAccount-navigation li:not(.is-active) > a svg:not([fill="none"]) {
	color: var(--bb-account-paper);
	fill: currentColor;
}
body.bbfaq-account-experience .woocommerce-MyAccount-navigation a :is(svg[fill="none"], svg [fill="none"]) {
	fill: none;
}
body.bbfaq-account-experience .woocommerce-MyAccount-navigation a :is(svg[stroke="none"], svg [stroke="none"]) {
	stroke: none;
}
body.bbfaq-account-experience .woocommerce-MyAccount-navigation .is-active > a::before,
body.bbfaq-account-experience .woocommerce-MyAccount-navigation .is-active > a svg:not([fill="none"]) {
	color: var(--bb-account-lavender);
	fill: currentColor;
}

/* Provider pagination remains native; this simply gives its existing current
 * page semantics a stable, visible state when the provider supplies aria-current. */
body.bbfaq-account-experience .bbfaq-account-referrals #affwp-affiliate-dashboard :is(.affwp-pagination, .affwp-paging, .pagination) [aria-current="page"] {
	border-color: var(--bb-account-plum);
	background: var(--bb-account-plum);
	color: var(--bb-account-paper);
	box-shadow: inset 0 -3px 0 var(--bb-account-gold);
}

/* WPLoyalty 1.4.5’s expanded copy is provider-supplied as a literal truncated
 * string. These rules keep its existing read-more/read-less controls visible
 * and measurable; they cannot restore text that is absent from the DOM. */
body.bbfaq-account-experience .wlr-myaccount-page p.wlr-description.wlr-pre-text.wlr-text-color.add-read-more.show-less-content,
body.bbfaq-account-experience .wlr-myaccount-page p.wlr-description.wlr-pre-text.wlr-text-color.add-read-more.show-more-content {
	display: block;
	max-width: 100%;
	margin-block: 10px 0;
	overflow: visible;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
	white-space: normal;
}
body.bbfaq-account-experience .wlr-myaccount-page p.wlr-description .sec-half {
	display: inline;
	max-width: 100%;
	overflow: visible;
	white-space: normal;
}
body.bbfaq-account-experience .wlr-myaccount-page p.wlr-description .read-more,
body.bbfaq-account-experience .wlr-myaccount-page p.wlr-description .read-less {
	display: inline-flex;
	align-items: baseline;
	margin-inline-start: .35rem;
	color: var(--bb-account-plum);
	font-weight: 700;
	white-space: normal;
}
body.bbfaq-account-experience .wlr-myaccount-page p.wlr-description :is(.wlr-read-more-label, .wlr-read-less-label) {
	font: inherit;
	text-decoration: underline;
	text-decoration-color: var(--bb-account-gold);
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}

/* WPLoyalty 1.4.5 native card contract, confirmed in its provider template and
 * stylesheet. The original fixed 2/3-column grids plus card minimums caused
 * narrow content columns inside WooCommerce's member rail. */
body.bbfaq-account-experience .wlr-myaccount-page :is(.wlr-customer-reward, .wlr-earning-options .wlr-campaign-container) {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 15.5rem), 1fr));
	gap: 16px;
	width: 100%;
	max-width: 100%;
}
body.bbfaq-account-experience .wlr-myaccount-page :is(.wlr-reward-card, .wlr-earning-options .wlr-card) {
	box-sizing: border-box;
	min-width: 0;
	min-height: 0;
	height: auto;
	padding: 14px;
	border-color: var(--bb-account-line);
	border-radius: 13px;
	background: #fffdf8;
	box-shadow: none;
	overflow: visible;
}
body.bbfaq-account-experience .wlr-myaccount-page :is(.wlr-reward-card, .wlr-earning-options .wlr-card):hover {
	border-color: #cdb9d4;
	box-shadow: 0 8px 18px rgba(67, 42, 73, .08);
}
body.bbfaq-account-experience .wlr-myaccount-page :is(.wlr-card-container, .wlr-card-inner-container) {
	width: 100%;
	min-width: 0;
	max-width: 100%;
	overflow: visible;
}
body.bbfaq-account-experience .wlr-myaccount-page :is(.wlr-name, .wlr-description, .wlr-discount-point) {
	max-width: 100%;
	overflow: visible;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}
body.bbfaq-account-experience .wlr-myaccount-page :is(.wlr-name, .wlr-discount-point) {
	white-space: nowrap;
}
body.bbfaq-account-experience .wlr-myaccount-page .wlr-description {
	white-space: normal;
}

/* The loyalty endpoint is the only member route with this verified nesting.
 * Make its content column the query owner, then remove redundant narrow-only
 * insets while retaining every native card, disclosure and tap target. */
body.bbfaq-account-experience .woocommerce-MyAccount-content:has(> .wlr-myaccount-page) {
	container-type: inline-size;
}
@media (max-width: 767px) {
	body.bbfaq-account-experience .woocommerce-MyAccount-content:has(> .wlr-myaccount-page) {
		padding-inline: 8px;
	}
}
/* Read-only provider facts are supplied by account-metrics-refinement. They
 * reuse the overview’s existing panel grammar rather than creating a second
 * dashboard or any call-to-action. */
body.bbfaq-account-experience .bb-account-overview__providers {
	margin-top: 22px;
	padding-top: 22px;
	border-top: 1px solid var(--bb-account-line);
}
body.bbfaq-account-experience .bb-account-overview__providers > h2 {
	margin: 0;
	font-size: clamp(1.2rem, 2.4vw, 1.55rem);
}
body.bbfaq-account-experience .bb-account-overview__providers .bb-account-overview__grid {
	margin-top: 14px;
}
body.bbfaq-account-experience .bb-account-overview__provider {
	background: linear-gradient(145deg, rgba(255, 255, 255, .84), rgba(246, 238, 244, .74));
}
body.bbfaq-account-experience .bb-account-overview__provider-heading h3 {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
}
body.bbfaq-account-experience .bb-account-overview__provider-icon {
	display: inline-flex;
	flex: 0 0 28px;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border: 1px solid #d4c3dc;
	border-radius: 50%;
	background: #f1e8f3;
	color: var(--bb-account-lavender);
	font-size: .95rem;
	line-height: 1;
}

/*
 * 3.7.20 mobile containment. Provider widgets and long account labels retain
 * their desktop presentation; only phone-sized account surfaces are bounded.
 */
@media (max-width: 767px) {
	body.bbfaq-account-experience
		.woocommerce-MyAccount-navigation-link--payment-methods {
		display: none !important;
	}

	body.bbfaq-account-experience .woocommerce #customer_login
		form.woocommerce-form-login
		.googlesitekit-sign-in-with-google__frontend-output-button {
		position: static !important;
		inset: auto !important;
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-inline: 0 !important;
		transform: none !important;
		overflow: hidden;
	}

	body.bbfaq-account-experience .woocommerce #customer_login
		form.woocommerce-form-login
		.googlesitekit-sign-in-with-google__frontend-output-button > * {
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100% !important;
		white-space: nowrap !important;
	}

	body.bbfaq-account-experience .wlr-myaccount-page
		:is(#wlr-available-points-heading, #wlr-redeemed-points-heading,
			#wlr-used-rewards-heading) {
		white-space: normal !important;
		overflow-wrap: anywhere;
		word-break: normal;
	}

	body.bbfaq-account-experience .bb-account-overview__metric dt {
		max-width: 100%;
		white-space: normal !important;
		overflow-wrap: anywhere !important;
		word-break: normal !important;
	}

}

/* 3.7.24: the theme retains its mobile account rail at wider effective phone
 * viewports, including Huawei's 768px CSS viewport. */
@media (min-width: 768px) and (max-width: 1024px) {
	body.bbfaq-account-experience
		.woocommerce-MyAccount-navigation-link--payment-methods {
		display: none !important;
	}
}
body.bbfaq-account-experience .bb-account-overview__providers {
	container-type: inline-size;
}
body.bbfaq-account-experience .bb-account-overview__metrics {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr));
	gap: 10px;
	margin: 16px 0 0;
}
body.bbfaq-account-experience .bb-account-overview__metric {
	min-width: 0;
	padding: 12px;
	border: 1px solid rgba(226, 219, 228, .9);
	border-radius: 10px;
	background: rgba(255, 253, 248, .72);
}
body.bbfaq-account-experience .bb-account-overview__metric dt {
	color: var(--bb-account-muted);
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .055em;
	line-height: 1.35;
	text-transform: uppercase;
	overflow-wrap: anywhere;
}
body.bbfaq-account-experience .bb-account-overview__metric dd {
	margin: 7px 0 0;
	color: var(--bb-account-plum);
	font-family: "BB Space Grotesk", Montserrat, sans-serif;
	font-size: clamp(1.16rem, 2.8vw, 1.55rem);
	font-weight: 700;
	line-height: 1.1;
	overflow-wrap: anywhere;
}
/* BudPoints summary labels are deliberately kept intact. The provider panel
 * gets a wider minimum metric track and stacks at its measured narrow width;
 * referral metrics retain their existing presentation. */
body.bbfaq-account-experience
	.bb-account-overview__panel:has(> .bb-account-overview__panel-heading > #bb-account-points-title)
	.bb-account-overview__metrics {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 13.5rem), 1fr));
}
body.bbfaq-account-experience
	.bb-account-overview__panel:has(> .bb-account-overview__panel-heading > #bb-account-points-title)
	.bb-account-overview__metric :is(dt, dd) {
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}
body.bbfaq-account-experience
	.bb-account-overview__panel:has(> .bb-account-overview__panel-heading > #bb-account-points-title)
	.bb-account-overview__metric dt {
	white-space: nowrap;
}
@container (max-width: 23rem) {
	body.bbfaq-account-experience .bb-account-overview__metrics {
		grid-template-columns: 1fr;
	}
}
@media (max-width: 480px) {
	body.bbfaq-account-experience .bb-account-overview__provider-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 7px;
	}
}

/* The details adapter owns excerpting, the complete provider string, and the
 * native disclosure state. These rules only give its actual details/summary
 * structure a durable reading surface and touch/keyboard treatment. */
body.bbfaq-account-experience .wlr-myaccount-page details.bbfaq-account-details[data-bbfaq-account-details="native"] {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	margin-top: 10px;
	border: 1px solid rgba(226, 219, 228, .92);
	border-radius: 10px;
	background: rgba(255, 253, 248, .7);
	color: var(--bb-account-ink);
	overflow: visible;
}
body.bbfaq-account-experience .wlr-myaccount-page .bbfaq-account-details__summary {
	display: block;
	min-height: 44px;
	padding: 11px 13px;
	border-radius: 9px;
	color: var(--bb-account-ink);
	cursor: pointer;
	line-height: 1.55;
	list-style: none;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}
body.bbfaq-account-experience .wlr-myaccount-page .bbfaq-account-details__summary::-webkit-details-marker {
	display: none;
}
body.bbfaq-account-experience .wlr-myaccount-page .bbfaq-account-details__summary:focus-visible {
	outline: 3px solid var(--bb-account-lavender);
	outline-offset: 3px;
}
body.bbfaq-account-experience .wlr-myaccount-page .bbfaq-account-details__preview {
	color: var(--bb-account-muted);
}
body.bbfaq-account-experience .wlr-myaccount-page .bbfaq-account-details :is(.bbfaq-account-details__more, .bbfaq-account-details__less) {
	margin-inline-start: .35rem;
	color: var(--bb-account-plum);
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: var(--bb-account-gold);
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}
body.bbfaq-account-experience .wlr-myaccount-page details.bbfaq-account-details[data-bbfaq-account-details="native"]:not([open]) .bbfaq-account-details__more {
	display: inline;
}
body.bbfaq-account-experience .wlr-myaccount-page details.bbfaq-account-details[data-bbfaq-account-details="native"]:not([open]) .bbfaq-account-details__less {
	display: none;
}
body.bbfaq-account-experience .wlr-myaccount-page details.bbfaq-account-details[data-bbfaq-account-details="native"][open] .bbfaq-account-details__preview,
body.bbfaq-account-experience .wlr-myaccount-page details.bbfaq-account-details[data-bbfaq-account-details="native"][open] .bbfaq-account-details__more {
	display: none;
}
body.bbfaq-account-experience .wlr-myaccount-page details.bbfaq-account-details[data-bbfaq-account-details="native"][open] .bbfaq-account-details__less {
	display: inline;
}
body.bbfaq-account-experience .wlr-myaccount-page .bbfaq-account-details__content {
	display: block;
	max-width: 100%;
	padding: 0 13px 13px;
	border-top: 1px solid var(--bb-account-line);
	color: var(--bb-account-ink);
	line-height: 1.6;
	overflow: visible;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}
body.bbfaq-account-experience .wlr-myaccount-page .bbfaq-account-details__content--static {
	padding-top: 10px;
	border-top: 0;
}

/* These narrow overrides intentionally follow the complete native card and
 * details contract above. Their endpoint/card ancestry also outranks the
 * earlier :is() branches, so the measured 14px/13px insets cannot win back. */
@container (max-width: 34rem) {
	body.bbfaq-account-experience .woocommerce-MyAccount-content > .wlr-myaccount-page {
		padding: 10px;
	}
	body.bbfaq-account-experience .woocommerce-MyAccount-content > .wlr-myaccount-page .wlr-customer-reward {
		padding: 10px;
	}
	body.bbfaq-account-experience .woocommerce-MyAccount-content > .wlr-myaccount-page .wlr-customer-reward .wlr-reward-card {
		padding: 10px;
	}
	body.bbfaq-account-experience .woocommerce-MyAccount-content > .wlr-myaccount-page details.bbfaq-account-details[data-bbfaq-account-details="native"] {
		padding-inline-end: 0;
	}
	body.bbfaq-account-experience .woocommerce-MyAccount-content > .wlr-myaccount-page .bbfaq-account-details__content {
		padding: 0 10px 10px;
	}
}
@container (max-width: 20rem) {
	body.bbfaq-account-experience .woocommerce-MyAccount-content > .wlr-myaccount-page,
	body.bbfaq-account-experience .woocommerce-MyAccount-content > .wlr-myaccount-page .wlr-customer-reward,
	body.bbfaq-account-experience .woocommerce-MyAccount-content > .wlr-myaccount-page .wlr-customer-reward .wlr-reward-card {
		padding: 4px;
	}
}

/* Keep the compact disclosure and native links before endpoint content after
 * the measured theme/member ordering rules above. Native link order is never
 * changed; only the three existing shell children receive flow order. */
body.bbfaq-account-experience .woocommerce.bbfaq-account-nav--compact:has(> .woocommerce-MyAccount-navigation) > .bbfaq-account-nav-toggle {
	order: -2;
}
body.bbfaq-account-experience .woocommerce.bbfaq-account-nav--compact:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation {
	order: -1 !important;
}
body.bbfaq-account-experience .woocommerce.bbfaq-account-nav--compact:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content {
	order: 0 !important;
}