/* MetaPilates — member sign-in + Flitt checkout pages.
 * A focused, distraction-free surface (no site chrome, standard for checkout).
 * Brand tokens: sage #A0B5A9 · ink #232B25 · cream #EFEAE0 · muted #5A6A5E ·
 * hairline #DDD5C6 · ink-pill #1C231E. Fonts come from metapilates-overrides.css. */

body { margin: 0; background: #EFEAE0; color: #232B25;
  font-family: "DM Sans", system-ui, -apple-system, sans-serif; -webkit-font-smoothing: antialiased; }

.mp-co { min-height: 100vh; display: flex; flex-direction: column; align-items: center;
  padding: 40px 20px 56px; }
.mp-co__brand { font-family: "Fraunces", Georgia, serif; font-size: 22px; font-weight: 600;
  color: #232B25; text-decoration: none; letter-spacing: -.02em; margin-bottom: 26px; }
.mp-co__card { width: 100%; max-width: 440px; background: #fff; border: 1px solid #DDD5C6;
  border-radius: 20px; padding: 28px; box-shadow: 0 10px 44px rgba(35,43,37,.07); }

.mp-co__pane { display: flex; flex-direction: column; gap: 14px; }
.mp-co__h { font-family: "Fraunces", Georgia, serif; font-size: 26px; font-weight: 600;
  margin: 0; letter-spacing: -.02em; }
.mp-co__sub { margin: 0; color: #5A6A5E; font-size: 15px; line-height: 1.45; }
.mp-co__label { font-size: 13px; color: #5A6A5E; margin-top: 4px; }

.mp-co__input { width: 100%; box-sizing: border-box; padding: 13px 14px; border: 1px solid #DDD5C6;
  border-radius: 12px; font: inherit; font-size: 16px; background: #fff; color: #232B25; }
.mp-co__input:focus { outline: none; border-color: #A0B5A9; box-shadow: 0 0 0 3px rgba(160,181,169,.35); }

.mp-co__btn { display: inline-flex; align-items: center; justify-content: center; width: 100%;
  box-sizing: border-box; padding: 14px 18px; margin-top: 6px; background: #1C231E; color: #fff;
  border: 0; border-radius: 999px; font: inherit; font-size: 16px; font-weight: 600; cursor: pointer;
  text-decoration: none; transition: opacity .15s ease, transform .05s ease; }
.mp-co__btn:hover { opacity: .92; }
.mp-co__btn:active { transform: scale(.99); }
.mp-co__btn:disabled { cursor: default; }
.mp-co__link { color: #232B25; text-decoration: underline; text-underline-offset: 2px; }

.mp-co__err { color: #8a2b2b; font-size: 14px; line-height: 1.4; }

.mp-co__summary { border: 1px solid #DDD5C6; background: #EFEAE0; border-radius: 14px; padding: 16px;
  display: flex; flex-direction: column; gap: 6px; }
.mp-co__summary-row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.mp-co__price { font-family: "Fraunces", Georgia, serif; font-size: 22px; font-weight: 600; }
.mp-co__muted { color: #5A6A5E; font-size: 13px; }

.mp-co__note { border: 1px solid #DDD5C6; border-radius: 14px; padding: 14px 16px; font-size: 14px;
  line-height: 1.45; }
.mp-co__consent { display: flex; align-items: flex-start; gap: 10px; text-align: left; background: none;
  border: 0; padding: 2px 0; font: inherit; font-size: 14px; line-height: 1.45; color: #232B25; cursor: pointer; }
.mp-co__check { flex: 0 0 auto; width: 22px; height: 22px; border: 1.5px solid #5A6A5E; border-radius: 6px;
  display: inline-flex; align-items: center; justify-content: center; color: #fff; font-size: 14px; line-height: 1; }
.mp-co__check.on { background: #A0B5A9; border-color: #A0B5A9; }
.mp-co__fine { color: #5A6A5E; font-size: 12px; margin: 4px 0 0; line-height: 1.4; }
