/* mmgatekeeper front.css
 * Status pill (pending amber / approved green / rejected red) + My Account block. */

/* =====================================================================
 * Verified-only onboarding policy notice.
 * Injected by notice.js (site-wide banner, registration notice, checkout
 * reminder) and rendered on the status page. High-contrast against the shop's
 * dark theme: on-brand deep green with an amber alert accent + white text.
 * ===================================================================== */
.mmgk-policy {
  /* Icon stacks above the centred text so nothing floats awkwardly to the left. */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  text-align: center;
  color: #ffffff;
  background: linear-gradient(135deg, #0f2417 0%, #1c3a28 100%);
  border-top: 3px solid #f5b301;
  border-bottom: 3px solid #f5b301;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.45);
}
.mmgk-policy__icon {
  flex: 0 0 auto;
  font-size: 2rem;
  line-height: 1;
  color: #ffd873;
  text-shadow: 0 0 6px rgba(245, 179, 1, 0.5);
}
.mmgk-policy__body {
  width: 100%;
  min-width: 0;
}
.mmgk-policy__l1 {
  margin: 0;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  line-height: 1.3;
  color: #ffffff;
  text-align: center;
}
.mmgk-policy__l2 {
  margin: 0.35rem 0 0;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.3;
  color: #ffd873;
  text-align: center;
}
/* Longer explanatory sentences: centred — they read cleanly at this width. */
.mmgk-policy__lead {
  margin: 0.55rem 0 0;
  font-size: 0.95rem;
  font-weight: 600;
  color: #d7f0e0;
  text-align: center;
}
.mmgk-policy__pending {
  margin: 0.55rem 0 0;
  font-size: 0.95rem;
  color: #eaf6ee;
  text-align: center;
}
.mmgk-policy__link {
  display: inline-block;
  margin-top: 0.5rem;
  color: #ffd873;
  font-weight: 700;
  text-decoration: underline;
}

/* Site-wide top banner RETIRED (Zeus, 2026-07-25): the policy no longer renders on
 * the homepage / general browsing, so the `.mmgk-policy--banner` styles (and the
 * former -15px header-gap hack they carried) are removed. The notice now appears
 * only as the inset card variant below (sign-up, cart/checkout, status page), which
 * has no negative margins and cannot leave a stray spacing artifact on the header. */

/* Inset card variant: registration notice + checkout reminder + status page. */
.mmgk-policy--inline {
  margin: 1.25rem auto;
  max-width: 900px;
  padding: 1.15rem 1.4rem;
  border-radius: 12px;
  border-left: 4px solid #f5b301;
}
.mmgk-policy--inline .mmgk-policy__l1 {
  font-size: 1rem;
}
.mmgk-policy--inline .mmgk-policy__l2 {
  font-size: 0.88rem;
}
.mmgk-account-block {
  margin: 0 0 1rem;
}
.mmgk-pill {
  display: inline-block;
  padding: 0.25em 0.75em;
  border-radius: 999px;
  font-size: 0.85rem;
  font-weight: 600;
  line-height: 1.4;
  color: #fff;
}
.mmgk-pill--pending {
  background: #f39c12;
}
.mmgk-pill--approved {
  background: #27ae60;
}
.mmgk-pill--rejected {
  background: #c0392b;
}
.mmgk-note {
  margin: 0.5rem 0 0;
  font-size: 0.9rem;
  color: #555;
}
.mmgk-answer {
  margin: 0.5rem 0 0;
  font-size: 0.9rem;
}
.mmgk-answer__label {
  font-weight: 600;
}

/* Cart-page hint (enforcing mode only). */
.mmgk-cart-hint {
  margin: 1rem 0;
  font-size: 0.95rem;
}
.mmgk-cart-hint a {
  margin-left: 0.35rem;
  text-decoration: underline;
}

/* Front "status" page. */
.mmgk-status-page {
  max-width: 680px;
  margin: 1.5rem auto;
}
.mmgk-status {
  padding: 1.25rem 1.5rem;
  border-radius: 10px;
  border: 1px solid #eee;
  background: #fafafa;
}
.mmgk-status--pending {
  border-left: 4px solid #f39c12;
}
.mmgk-status--rejected {
  border-left: 4px solid #c0392b;
}
.mmgk-status__lead {
  margin: 0.75rem 0 0.5rem;
  font-size: 1.05rem;
  font-weight: 600;
}
.mmgk-status__help,
.mmgk-status__reason {
  margin: 0.5rem 0 0;
  color: #555;
}
.mmgk-status__actions {
  margin-top: 1.25rem;
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
}
