/* NutriSavvy Members: brand styles for Paid Memberships Pro's pages (login, sign-up, account, levels…)
   Loaded only on those pages. Same look as the members area: pink buttons with near-black text,
   dark green links that turn pink, orange headings, orange / pink / green stripe on each box.
   !important beats both Paid Memberships Pro's own colors and the theme's black hover buttons. */
body .pmpro{
  --pmpro--color--accent:#4e7425;            /* links, "Show password", focus rings */
  --pmpro--color--accent--variation:#d879a1; /* hover */
  --pmpro--color--contrast:#1f1f1f;
  --pmpro--color--base:#ffffff;
  --nsm-pink:#d879a1; --nsm-pink-light:#e7a3c1; --nsm-pink-50:#fcf0f5; --nsm-pink-text:#a8476f;
  --nsm-orange:#f27405; --nsm-leaf:#7faf42; --nsm-green:#4e7425; --nsm-ink:#1f1f1f;
  color:var(--nsm-ink);
}

/* Boxes: the 3-color stripe on top */
body .pmpro .pmpro_card{position:relative;overflow:hidden;border-radius:16px !important}
body .pmpro .pmpro_card::before{content:"";display:block;height:6px;background:linear-gradient(90deg,var(--nsm-orange) 0 33.3%,var(--nsm-pink) 33.3% 66.6%,var(--nsm-leaf) 66.6% 100%)}

/* Headings */
body .pmpro .pmpro_card_title, body .pmpro h2.pmpro_card_title, body .pmpro .pmpro_section_title{
  color:var(--nsm-orange) !important;font-weight:700 !important;text-transform:none !important;letter-spacing:normal !important;font-family:inherit !important
}

/* Main buttons (Log in, Sign up, Save…): pink, near-black text, never black on hover */
body .pmpro .pmpro_btn:not(.pmpro_btn-plain):not(.pmpro_btn-outline):not(.pmpro_btn-delete),
body .pmpro input[type="submit"],
body .pmpro button[type="submit"]{
  background:var(--nsm-pink) !important;background-color:var(--nsm-pink) !important;
  border:2px solid var(--nsm-pink) !important;color:var(--nsm-ink) !important;
  border-radius:999px !important;box-shadow:none !important;text-shadow:none !important;
  font-family:inherit !important;font-weight:700 !important;font-size:1rem !important;
  line-height:1.2 !important;padding:13px 24px !important;min-height:48px !important;
  text-transform:none !important;letter-spacing:normal !important;opacity:1 !important
}
body .pmpro .pmpro_btn:not(.pmpro_btn-plain):not(.pmpro_btn-outline):not(.pmpro_btn-delete):hover,
body .pmpro .pmpro_btn:not(.pmpro_btn-plain):not(.pmpro_btn-outline):not(.pmpro_btn-delete):focus,
body .pmpro input[type="submit"]:hover, body .pmpro input[type="submit"]:focus,
body .pmpro button[type="submit"]:hover, body .pmpro button[type="submit"]:focus{
  background:var(--nsm-pink-light) !important;background-color:var(--nsm-pink-light) !important;
  border-color:var(--nsm-pink-light) !important;color:var(--nsm-ink) !important
}

/* Outline buttons (e.g. "Change" on the account page) */
body .pmpro .pmpro_btn-outline{background:#fff !important;color:var(--nsm-ink) !important;border:2px solid var(--nsm-pink) !important;border-radius:999px !important;box-shadow:none !important}
body .pmpro .pmpro_btn-outline:hover, body .pmpro .pmpro_btn-outline:focus{background:var(--nsm-pink-50) !important;border-color:var(--nsm-pink-text) !important;color:var(--nsm-ink) !important}

/* Text-only buttons ("Show password"): dark green, pink on hover, no box */
body .pmpro .pmpro_btn-plain, body .pmpro .pmpro_btn-plain:hover, body .pmpro .pmpro_btn-plain:focus{
  background:transparent !important;border:0 !important;box-shadow:none !important;padding:4px 0 !important;min-height:0 !important;
  text-transform:none !important;letter-spacing:normal !important;line-height:1.3 !important;font-family:inherit !important
}
body .pmpro .pmpro_btn-plain{color:var(--nsm-green) !important}
body .pmpro .pmpro_btn-plain:hover, body .pmpro .pmpro_btn-plain:focus{color:var(--nsm-pink) !important}
body .pmpro .pmpro_btn-plain svg{stroke:currentColor !important}

/* Links */
body .pmpro a:not(.pmpro_btn), body .pmpro a:not(.pmpro_btn):visited{color:var(--nsm-green) !important;background:none !important;text-decoration:underline;text-underline-offset:2px}
body .pmpro a:not(.pmpro_btn):hover, body .pmpro a:not(.pmpro_btn):focus{color:var(--nsm-pink) !important;background:none !important}

/* Fields: brand focus color */
body .pmpro input[type="text"]:focus, body .pmpro input[type="email"]:focus, body .pmpro input[type="password"]:focus, body .pmpro select:focus{
  border-color:var(--nsm-pink) !important;box-shadow:0 0 0 3px rgba(216,121,161,.25) !important;outline:none !important
}
body .pmpro button:focus-visible, body .pmpro a:focus-visible, body .pmpro input:focus-visible{outline:3px solid var(--nsm-orange) !important;outline-offset:2px}

/* Our notes on the sign-up form */
body .pmpro .nsm-pmpro-note{color:#5a5a5a}

/* Labels and checkboxes: readable size whatever the theme does to labels */
body .pmpro label, body .pmpro .pmpro_form_label{
  text-transform:none !important;letter-spacing:normal !important;font-size:.95rem !important;font-weight:600 !important;line-height:1.4 !important;color:var(--nsm-ink) !important
}
body .pmpro .nsm-adult{margin:6px 0 4px !important}
body .pmpro .nsm-adult label, body .pmpro .login-remember label, body .pmpro .pmpro_form_field-checkbox label{
  display:flex !important;align-items:center !important;gap:10px !important;font-size:1rem !important;cursor:pointer
}
body .pmpro .nsm-adult input[type="checkbox"], body .pmpro .login-remember input[type="checkbox"], body .pmpro .pmpro_form_field-checkbox input[type="checkbox"]{
  -webkit-appearance:auto !important;appearance:auto !important;width:22px !important;height:22px !important;min-width:22px;margin:0 !important;padding:0 !important;
  opacity:1 !important;position:static !important;accent-color:var(--nsm-pink);flex:none
}
body .pmpro .nsm-pmpro-note{font-size:.92rem !important;line-height:1.4 !important;margin:6px 0 10px !important}
