/**
 * TMO Global UI: Paid Memberships Pro frontend adapter.
 *
 * The documented legacy bridges below are limited to properties forced by the
 * live WordPress Additional CSS. They exist only under the active PMPro adapter
 * and do not modify or migrate the legacy source.
 */

body.tmo-ui-active.tmo-ui-adapter-pmpro #content .pmpro {
	--pmpro--color--accent: var(--tmo-ui-brand);
	--pmpro--color--base: var(--tmo-ui-surface);
	--pmpro--color--base-2: var(--tmo-ui-surface-subtle);
	--pmpro--color--contrast: var(--tmo-ui-text);
	--pmpro--color--border: var(--tmo-ui-border-strong);
	--pmpro--color--info-background: var(--tmo-ui-brand-soft);
	--pmpro--color--info-border: var(--tmo-ui-brand);
	--pmpro--color--info-text: var(--tmo-ui-link-hover);
	--pmpro--color--info-link: var(--tmo-ui-link-hover);
	--pmpro--color--success-background: var(--tmo-ui-brand-soft);
	--pmpro--color--success-border: var(--tmo-ui-brand);
	--pmpro--color--success-text: var(--tmo-ui-link-hover);
	--pmpro--color--success-link: var(--tmo-ui-link-hover);
	color: var(--tmo-ui-text);
}

/* Legacy bridge 1â€“2: replace forced dark account/profile surfaces and text. */
body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	.pmp_box,
	#pmpro_account,
	#pmpro_account-profile,
	#pmpro_account-invoices,
	#pmpro_account-membership,
	.bb-pmpro_account-profile
) {
	background-color: var(--tmo-ui-surface) !important;
	color: var(--tmo-ui-text) !important;
}

/* Legacy bridge 3: replace forced white/purple PMPro text. */
body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account table,
	#pmpro_account th,
	#pmpro_account td,
	.bb-pmpro_account-profile,
	.bb-pmpro_account-profile p,
	.pmpro_card,
	.pmpro_card_content,
	.pmpro_card_title,
	.pmpro_levels_table th,
	.pmpro_levels_table td,
	.pmpro_checkout,
	.pmpro_checkout p,
	[id^="pmpro_confirmation-"],
	[id^="pmpro_confirmation-"] p,
	#pmpro_cancel,
	#pmpro_cancel p,
	.pmpro_section p,
	.pmpro_table th,
	.pmpro_table td
) {
	color: var(--tmo-ui-text) !important;
}

/* Legacy bridge 4: replace forced dark card and level-table surfaces. */
body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	.pmpro_card,
	.pmpro_card_content,
	.pmpro_levels_table td
) {
	background-color: var(--tmo-ui-surface) !important;
}

/* Legacy bridge 5: give forced level/account headers a light semantic surface. */
body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account th,
	.pmpro_levels_table th
) {
	background-color: var(--tmo-ui-surface-subtle) !important;
}

/* Legacy bridge 6: replace forced #333/#444 PMPro borders. */
body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account table,
	#pmpro_account th,
	#pmpro_account td,
	.pmpro_card,
	.pmpro_card_content,
	.pmpro_levels_table th,
	.pmpro_levels_table td
) {
	border-color: var(--tmo-ui-border) !important;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) {
	box-sizing: border-box;
	min-width: 0;
	color: var(--tmo-ui-text);
	font-family: var(--tmo-ui-font-body);
	font-size: var(--tmo-ui-font-size-md);
	line-height: var(--tmo-ui-line-height-body);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content #pmpro_account {
	max-width: 100%;
	padding: var(--tmo-ui-space-6);
	border: var(--tmo-ui-border-width) solid var(--tmo-ui-border);
	border-radius: var(--tmo-ui-radius-card);
	box-shadow: var(--tmo-ui-shadow-sm);
	overflow-x: auto;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account .pmpro_box,
	#pmpro_account .pmpro_card,
	#pmpro_account .pmpro_section,
	.pmpro_checkout .pmpro_card,
	.pmpro_billing_wrap .pmpro_card,
	#pmpro_invoice .pmpro_card,
	#pmpro_cancel .pmpro_card
) {
	box-sizing: border-box;
	min-width: 0;
	margin: 0 0 var(--tmo-ui-space-6);
	padding: var(--tmo-ui-space-6);
	border: var(--tmo-ui-border-width) solid var(--tmo-ui-border);
	border-radius: var(--tmo-ui-radius-card);
	background-color: var(--tmo-ui-surface);
	box-shadow: var(--tmo-ui-shadow-sm);
	color: var(--tmo-ui-text);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) h2 {
	margin: 0 0 var(--tmo-ui-space-5);
	color: var(--tmo-ui-text);
	font-family: var(--tmo-ui-font-heading);
	font-size: var(--tmo-ui-font-size-2xl);
	font-weight: var(--tmo-ui-font-weight-bold);
	letter-spacing: -0.015em;
	line-height: var(--tmo-ui-line-height-heading);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) h3 {
	margin: var(--tmo-ui-space-6) 0 var(--tmo-ui-space-3);
	color: var(--tmo-ui-text);
	font-family: var(--tmo-ui-font-body);
	font-size: var(--tmo-ui-font-size-xl);
	font-weight: var(--tmo-ui-font-weight-bold);
	line-height: 1.35;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(p, li) {
	color: var(--tmo-ui-text-secondary);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content .pmpro :where(
	.pmpro_section,
	.pmpro_card,
	.pmpro_card_content,
	.pmpro_card_title,
	.pmpro_form_field,
	.pmpro_form_label,
	.pmpro_form_legend,
	.pmpro_list,
	.pmpro_confirmation-level-message,
	strong,
	b
) {
	color: var(--tmo-ui-text);
}

/* Confirmation-only legacy bridge: the live page still forces white copy. */
body.tmo-ui-active.tmo-ui-light.tmo-ui-context--pmpro-confirmation.tmo-ui-adapter-pmpro #content :where(
	.pmpro,
	[id^="pmpro_confirmation-"],
	#pmpro_invoice
),
body.tmo-ui-active.tmo-ui-light.tmo-ui-context--pmpro-confirmation.tmo-ui-adapter-pmpro #content :where(
	.pmpro,
	[id^="pmpro_confirmation-"],
	#pmpro_invoice
) :where(
	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	p,
	li,
	dt,
	dd,
	span,
	label,
	strong,
	b,
	th,
	td,
	.pmpro_card,
	.pmpro_card_content,
	.pmpro_card_title,
	.pmpro_section,
	.pmpro_confirmation-level-message
) {
	color: var(--tmo-ui-text) !important;
}

body.tmo-ui-active.tmo-ui-light.tmo-ui-context--pmpro-confirmation.tmo-ui-adapter-pmpro #content :where(
	.pmpro,
	[id^="pmpro_confirmation-"],
	#pmpro_invoice
) a:not(.pmpro_btn) {
	color: var(--tmo-ui-link) !important;
}

body.tmo-ui-active.tmo-ui-light.tmo-ui-context--pmpro-confirmation.tmo-ui-adapter-pmpro #content :where(
	.pmpro,
	[id^="pmpro_confirmation-"],
	#pmpro_invoice
) a:not(.pmpro_btn):where(:hover, :focus-visible) {
	color: var(--tmo-ui-link-hover) !important;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) a:not(.pmpro_btn) {
	color: var(--tmo-ui-link);
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) a:not(.pmpro_btn):hover {
	color: var(--tmo-ui-link-hover);
}

/* Secondary is the neutral default; explicit submit/primary controls are filled. */
body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(a.pmpro_btn, button.pmpro_btn, input.pmpro_btn, button[type="submit"], input[type="submit"]) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: var(--tmo-ui-touch-target);
	min-height: var(--tmo-ui-touch-target);
	margin: 0;
	padding: 0.625rem 1rem;
	border: var(--tmo-ui-border-width) solid var(--tmo-ui-border-strong);
	border-radius: var(--tmo-ui-radius-button);
	background-color: var(--tmo-ui-surface);
	box-shadow: none;
	color: var(--tmo-ui-link);
	font-family: var(--tmo-ui-font-body);
	font-size: 0.9375rem;
	font-weight: var(--tmo-ui-font-weight-semibold);
	line-height: 1.25;
	text-align: center;
	text-decoration: none;
	appearance: none;
	cursor: pointer;
	transition:
		background-color var(--tmo-ui-duration-fast) var(--tmo-ui-ease-standard),
		border-color var(--tmo-ui-duration-fast) var(--tmo-ui-ease-standard),
		box-shadow var(--tmo-ui-duration-fast) var(--tmo-ui-ease-standard),
		transform var(--tmo-ui-duration-fast) var(--tmo-ui-ease-standard);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(a.pmpro_btn, button.pmpro_btn, input.pmpro_btn, button[type="submit"], input[type="submit"]):not(:disabled):not([aria-disabled="true"]):hover {
	border-color: var(--tmo-ui-brand);
	background-color: var(--tmo-ui-brand-soft);
	box-shadow: var(--tmo-ui-shadow-xs);
	color: var(--tmo-ui-link-hover);
	transform: translateY(-1px);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(a.pmpro_btn, button.pmpro_btn, input.pmpro_btn, button[type="submit"], input[type="submit"]):not(:disabled):not([aria-disabled="true"]):active {
	border-color: var(--tmo-ui-brand-active);
	background-color: var(--tmo-ui-brand-active);
	box-shadow: var(--tmo-ui-shadow-xs);
	color: var(--tmo-ui-on-brand);
	transform: translateY(0);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice
) :where(.pmpro_btn-primary, .pmpro_btn-submit, button[type="submit"], input[type="submit"]) {
	border-color: var(--tmo-ui-brand);
	background-color: var(--tmo-ui-brand);
	box-shadow: var(--tmo-ui-shadow-xs);
	color: var(--tmo-ui-on-brand);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice
) :where(.pmpro_btn-primary, .pmpro_btn-submit, button[type="submit"], input[type="submit"]):not(:disabled):not([aria-disabled="true"]):hover {
	border-color: var(--tmo-ui-brand-hover);
	background-color: var(--tmo-ui-brand-hover);
	color: var(--tmo-ui-on-brand);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content #pmpro_cancel :where(.pmpro_btn, button[type="submit"], input[type="submit"]) {
	border-color: var(--tmo-ui-error-solid);
	background-color: var(--tmo-ui-error-solid);
	color: var(--tmo-ui-text-inverse);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content #pmpro_cancel :where(.pmpro_btn, button[type="submit"], input[type="submit"]):not(:disabled):hover {
	border-color: var(--tmo-ui-error-hover);
	background-color: var(--tmo-ui-error-hover);
	color: var(--tmo-ui-text-inverse);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content #pmpro_cancel :where(.pmpro_btn, button[type="submit"], input[type="submit"]):not(:disabled):not([aria-disabled="true"]):active {
	border-color: var(--tmo-ui-error-active);
	background-color: var(--tmo-ui-error-active);
	color: var(--tmo-ui-text-inverse);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(a.pmpro_btn, button.pmpro_btn, input.pmpro_btn, button[type="submit"], input[type="submit"]):is(:disabled, [aria-disabled="true"]) {
	border-color: var(--tmo-ui-disabled-surface);
	background-color: var(--tmo-ui-disabled-surface);
	box-shadow: none;
	color: var(--tmo-ui-disabled-text);
	cursor: not-allowed;
	transform: none;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(
	input[type="text"],
	input[type="email"],
	input[type="password"],
	input[type="tel"],
	input[type="url"],
	input[type="number"],
	select,
	textarea
) {
	box-sizing: border-box;
	width: 100%;
	min-height: var(--tmo-ui-control-height);
	padding: 0.625rem 0.75rem;
	border: var(--tmo-ui-border-width) solid var(--tmo-ui-border-strong);
	border-radius: var(--tmo-ui-radius-input);
	background-color: var(--tmo-ui-surface);
	box-shadow: var(--tmo-ui-shadow-xs);
	color: var(--tmo-ui-text);
	font-family: var(--tmo-ui-font-body);
	font-size: var(--tmo-ui-font-size-md);
	line-height: var(--tmo-ui-line-height-ui);
	transition:
		border-color var(--tmo-ui-duration-fast) var(--tmo-ui-ease-standard),
		box-shadow var(--tmo-ui-duration-fast) var(--tmo-ui-ease-standard),
		background-color var(--tmo-ui-duration-fast) var(--tmo-ui-ease-standard);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(
	input[type="text"],
	input[type="email"],
	input[type="password"],
	input[type="tel"],
	input[type="url"],
	input[type="number"],
	select,
	textarea
):not(:disabled):not([readonly]):hover {
	border-color: var(--tmo-ui-text-secondary);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(
	input[type="text"],
	input[type="email"],
	input[type="password"],
	input[type="tel"],
	input[type="url"],
	input[type="number"],
	select,
	textarea
):focus {
	border-color: var(--tmo-ui-focus);
	box-shadow: 0 0 0 var(--tmo-ui-focus-width) var(--tmo-ui-focus-ring);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(input, textarea)::placeholder {
	color: var(--tmo-ui-text-muted);
	opacity: 1;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) textarea {
	min-height: 8rem;
	resize: vertical;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(input, select, textarea):is(:disabled, [readonly]) {
	border-color: var(--tmo-ui-border);
	background-color: var(--tmo-ui-disabled-surface);
	box-shadow: none;
	color: var(--tmo-ui-disabled-text);
	cursor: not-allowed;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(input, select, textarea)[aria-invalid="true"] {
	border-color: var(--tmo-ui-error-solid);
	box-shadow: 0 0 0 var(--tmo-ui-focus-width) var(--tmo-ui-error-ring);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(input[type="checkbox"], input[type="radio"]) {
	accent-color: var(--tmo-ui-brand);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) .pmpro_form_field {
	margin: 0 0 var(--tmo-ui-space-5);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) .pmpro_form_field > label {
	display: inline-block;
	margin: 0 0 var(--tmo-ui-space-2);
	color: var(--tmo-ui-text);
	font-size: var(--tmo-ui-font-size-sm);
	font-weight: var(--tmo-ui-font-weight-semibold);
	line-height: var(--tmo-ui-line-height-ui);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(.pmpro_form_field-description, .lite) {
	display: block;
	margin: var(--tmo-ui-space-2) 0 0;
	color: var(--tmo-ui-text-muted);
	font-size: var(--tmo-ui-font-size-sm);
	line-height: var(--tmo-ui-line-height-ui);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) table {
	width: 100%;
	margin: 0 0 var(--tmo-ui-space-6);
	border: var(--tmo-ui-border-width) solid var(--tmo-ui-border);
	border-collapse: separate;
	border-spacing: 0;
	border-radius: var(--tmo-ui-radius-card);
	background-color: var(--tmo-ui-surface);
	color: var(--tmo-ui-text);
	font-size: var(--tmo-ui-font-size-sm);
	line-height: var(--tmo-ui-line-height-ui);
	overflow: hidden;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) table :where(th, td) {
	padding: var(--tmo-ui-space-3) var(--tmo-ui-space-4);
	border: 0;
	border-bottom: var(--tmo-ui-border-width) solid var(--tmo-ui-border);
	color: var(--tmo-ui-text-secondary);
	text-align: start;
	vertical-align: middle;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) table thead th {
	background-color: var(--tmo-ui-surface-subtle);
	color: var(--tmo-ui-text);
	font-size: 0.8125rem;
	font-weight: var(--tmo-ui-font-weight-semibold);
	letter-spacing: 0.025em;
	text-transform: uppercase;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) table tbody tr:last-child > :where(th, td) {
	border-bottom: 0;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) table tbody tr {
	transition: background-color var(--tmo-ui-duration-fast) var(--tmo-ui-ease-standard);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) table tbody tr:hover {
	background-color: var(--tmo-ui-surface-subtle);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) .pmpro_pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--tmo-ui-space-2);
	margin: var(--tmo-ui-space-6) 0 0;
	padding: 0;
	border: 0;
	list-style: none;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) .pmpro_pagination :where(a, span) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: var(--tmo-ui-touch-target);
	min-height: var(--tmo-ui-touch-target);
	padding: var(--tmo-ui-space-2);
	border: var(--tmo-ui-border-width) solid var(--tmo-ui-border);
	border-radius: var(--tmo-ui-radius-input);
	background-color: var(--tmo-ui-surface);
	color: var(--tmo-ui-text-secondary);
	font-size: var(--tmo-ui-font-size-sm);
	font-weight: var(--tmo-ui-font-weight-semibold);
	line-height: 1;
	text-decoration: none;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) .pmpro_pagination :where(a, span):is(:hover, .current, [aria-current="page"]) {
	border-color: var(--tmo-ui-brand);
	background-color: var(--tmo-ui-brand-soft);
	color: var(--tmo-ui-link-hover);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(.pmpro_message, .pmpro_alert, .pmpro_error, .pmpro_success) {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 var(--tmo-ui-space-5);
	padding: var(--tmo-ui-space-4);
	border: var(--tmo-ui-border-width) solid var(--tmo-ui-brand);
	border-left-width: 4px;
	border-radius: var(--tmo-ui-radius-input);
	background-color: var(--tmo-ui-brand-soft);
	box-shadow: none;
	color: var(--tmo-ui-link-hover);
	font-size: var(--tmo-ui-font-size-sm);
	font-weight: var(--tmo-ui-font-weight-medium);
	line-height: var(--tmo-ui-line-height-ui);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(.pmpro_message, .pmpro_alert, .pmpro_error, .pmpro_success) > :first-child {
	margin-top: 0;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(.pmpro_message, .pmpro_alert, .pmpro_error, .pmpro_success) > :last-child {
	margin-bottom: 0;
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) .pmpro_success {
	border-color: var(--tmo-ui-brand);
	background-color: var(--tmo-ui-brand-soft);
	color: var(--tmo-ui-link-hover);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) .pmpro_alert {
	border-color: var(--tmo-ui-warning-border);
	background-color: var(--tmo-ui-warning-surface);
	color: var(--tmo-ui-warning-text);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) .pmpro_error {
	border-color: var(--tmo-ui-error-border);
	background-color: var(--tmo-ui-error-surface);
	color: var(--tmo-ui-error-text);
}

body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
	#pmpro_account,
	.pmpro,
	.pmpro_checkout,
	.pmpro_billing_wrap,
	#pmpro_invoice,
	#pmpro_cancel
) :where(
	a[href],
	button,
	input:not([type="hidden"]),
	select,
	textarea,
	summary,
	[tabindex]:not([tabindex="-1"])
):focus-visible {
	outline: var(--tmo-ui-focus-width) solid var(--tmo-ui-focus);
	outline-offset: 3px;
}

@media (max-width: 47.9375rem) {
	body.tmo-ui-active.tmo-ui-adapter-pmpro #content #pmpro_account,
	body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
		#pmpro_account .pmpro_box,
		#pmpro_account .pmpro_card,
		#pmpro_account .pmpro_section,
		.pmpro_checkout .pmpro_card,
		.pmpro_billing_wrap .pmpro_card,
		#pmpro_invoice .pmpro_card,
		#pmpro_cancel .pmpro_card
	) {
		padding: var(--tmo-ui-space-4);
		border-radius: var(--tmo-ui-radius-input);
	}

	body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
		#pmpro_account,
		.pmpro,
		.pmpro_checkout,
		.pmpro_billing_wrap,
		#pmpro_invoice,
		#pmpro_cancel
	) h2 {
		font-size: var(--tmo-ui-font-size-xl);
	}

	body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
		#pmpro_account,
		.pmpro,
		.pmpro_checkout,
		.pmpro_billing_wrap,
		#pmpro_invoice,
		#pmpro_cancel
	) {
		max-width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
		#pmpro_account,
		.pmpro,
		.pmpro_checkout,
		.pmpro_billing_wrap,
		#pmpro_invoice,
		#pmpro_cancel
	) table :where(th, td) {
		white-space: nowrap;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.tmo-ui-active.tmo-ui-adapter-pmpro #content :where(
		#pmpro_account,
		.pmpro,
		.pmpro_checkout,
		.pmpro_billing_wrap,
		#pmpro_invoice,
		#pmpro_cancel
	) :where(a.pmpro_btn, button, input, select, textarea) {
		transition-duration: 0.01ms;
		transform: none;
	}
}