/**
 * BTS PMPro component-specific frontend styling.
 *
 * Shared BTS text-link and CTA presentation is owned by BTS Site UX.
 * BTS PMPro opts approved controls into those contracts semantically and does
 * not duplicate shared BTS palette or interaction presentation here.
 */

/**
 * PMPro form-control spacing.
 *
 * PMPro checkbox and radio controls should not visually collide with their
 * labels. This is component-specific spacing owned by BTS PMPro, not part of the
 * shared BTS text-link or CTA contracts.
 */
.pmpro_form label > input[type="checkbox"],
.pmpro_form label > input[type="radio"],
.pmpro_login_wrap #loginform label > input[type="checkbox"],
.pmpro_login_wrap #loginform label > input[type="radio"] {
	margin-inline-end: 0.5rem;
}

.pmpro_form input[type="checkbox"] + label,
.pmpro_form input[type="radio"] + label,
.pmpro_login_wrap #loginform input[type="checkbox"] + label,
.pmpro_login_wrap #loginform input[type="radio"] + label {
	margin-inline-start: 0.5rem;
}

/**
 * PMPro Login layout.
 *
 * BTS PMPro owns only component-specific geometry here. Shared colors,
 * typography, borders, radii, shadows, and interaction states remain owned by
 * BTS Site UX through the shared semantic classes.
 *
 * Desktop target:
 * - compact authentication card
 * - approximately 560px form column
 * - natural-width primary action
 *
 * max-width + width:100% keep the layout fluid on smaller screens without a
 * separate breakpoint.
 */
#pmpro_login .pmpro_login_wrap {
	width: 100%;
	max-width: 42rem;
	margin-inline: 0 auto;
	box-sizing: border-box;
}

#pmpro_login .pmpro_login_wrap .pmpro_card_content {
	box-sizing: border-box;
}

#pmpro_login .pmpro_login_wrap .bts-pmpro-login-account-cta,
#pmpro_login .pmpro_login_wrap #loginform {
	width: 100%;
	max-width: 35rem;
	box-sizing: border-box;
}

#pmpro_login .pmpro_login_wrap #loginform > p {
	margin-block-start: 0;
}

#pmpro_login .pmpro_login_wrap #loginform > .login-username,
#pmpro_login .pmpro_login_wrap #loginform > .login-password {
	margin-block-end: 1.15rem;
}

#pmpro_login .pmpro_login_wrap #loginform > .login-remember {
	margin-block: 0.35rem 0;
}

#pmpro_login .pmpro_login_wrap #loginform > .login-submit {
	margin-block: 1.25rem 0;
}

#pmpro_login .pmpro_login_wrap #loginform #wp-submit.bts-cta-button {
	width: auto !important;
	min-width: 8rem;
	max-width: 100%;
}

/**
 * PMPro Login flat-surface alignment.
 *
 * PMPro renders status notices as direct children of #pmpro_login above the
 * login card. Keep the notice and card on the same focused column and remove
 * decorative elevation from this PMPro-specific surface.
 *
 * Colors, borders, radii, typography, and shared interaction states remain
 * owned by PMPro / BTS Site UX.
 */
#pmpro_login > .pmpro_message {
	width: 100%;
	max-width: 42rem;
	box-sizing: border-box;
	margin-inline: 0 auto;
}

#pmpro_login > .pmpro_message,
#pmpro_login .pmpro_login_wrap {
	box-shadow: none !important;
}

