/* Paid Memberships Pro frontend (login, account, checkout) — make the forms
   match the BUMS design system. !important is used to win over PMPro's own
   frontend stylesheet, which loads after the theme styles. */

/* Narrow + centre the login card */
.pmpro_card.pmpro_login_wrap {
	max-width: 540px;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Labels */
.pmpro label,
.pmpro .pmpro_form_label {
	font-family: var(--font-display);
	font-weight: 700;
	color: var(--ink);
}

/* Inputs, selects, textareas — match the site's .field/.input style */
.pmpro input[type="text"],
.pmpro input[type="email"],
.pmpro input[type="password"],
.pmpro input[type="tel"],
.pmpro input[type="url"],
.pmpro input[type="number"],
.pmpro select,
.pmpro textarea {
	font-family: var(--font-body) !important;
	font-size: 18px !important;
	color: var(--ink);
	background: #fff;
	border: 1px solid var(--line-strong) !important;
	border-radius: var(--r-sm) !important;
	padding: 13px 15px !important;
	min-height: 52px;
	box-shadow: none !important;
}
.pmpro input:focus,
.pmpro select:focus,
.pmpro textarea:focus {
	outline: 3px solid var(--amber-300) !important;
	outline-offset: 1px;
	border-color: var(--amber-500) !important;
}

/* Primary submit buttons → mirror .btn-primary (alpine green, pill) */
.pmpro .button.button-primary,
.pmpro input[type="submit"],
.pmpro .pmpro_btn-submit,
.pmpro .pmpro_btn-submit-checkout {
	font-family: var(--font-display) !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	border: 0 !important;
	border-radius: var(--r-pill) !important;
	padding: 15px 28px !important;
	min-height: 52px;
	background: var(--alpine-600) !important;
	color: #fff !important;
	box-shadow: 0 2px 0 var(--alpine-800), var(--shadow-sm) !important;
	cursor: pointer;
}
.pmpro .button.button-primary:hover,
.pmpro input[type="submit"]:hover,
.pmpro .pmpro_btn-submit:hover,
.pmpro .pmpro_btn-submit-checkout:hover {
	background: var(--alpine-500) !important;
}

/* Secondary / cancel buttons → outline style */
.pmpro .pmpro_btn-cancel,
.pmpro .button:not(.button-primary) {
	border-radius: var(--r-pill) !important;
	font-family: var(--font-display) !important;
	font-weight: 700 !important;
}

/* Links */
.pmpro a {
	color: var(--alpine-600);
}

/* Levels page: brand the table + Select button (default PMPro is navy). */
.pmpro #pmpro_levels_table,
.pmpro .pmpro_levels_table{border-collapse:collapse;width:100%;}
.pmpro #pmpro_levels_table th{font-family:var(--font-display);font-weight:800;color:var(--ink);}
.pmpro #pmpro_levels_table td{font-size:17px;color:var(--ink-soft);}
.pmpro .pmpro_btn,
.pmpro a.pmpro_btn{background:var(--alpine-600,#2f6633);border:0;border-radius:var(--r-pill,999px);
  color:#fff;font-family:var(--font-display);font-weight:700;font-size:17px;padding:12px 26px;text-decoration:none;}
.pmpro .pmpro_btn:hover,
.pmpro a.pmpro_btn:hover{background:var(--alpine-500,#3a7a4d);color:#fff;}

/* Notices like "Membership Required" when arriving from locked content. */
.pmpro_message,
.pmpro .pmpro_message{background:var(--paper-2,#f6efe2);border:1px solid var(--line-strong,#cdbfa4);
  border-left:6px solid var(--amber-500,#e89c3c);border-radius:var(--r-md,10px);
  color:var(--ink,#2b211a);font-size:16.5px;padding:16px 20px;margin:0 0 24px;}
.pmpro_message a{color:var(--alpine-700,#2f6633);font-weight:700;}
