/* ============================================================================
   RUMBO · F2 · Alta + Pago — formularios "documento"
   Estilos de /alta/ y /pago/. Todo lee de tokens.css. RTL con propiedades
   lógicas. La tarjeta imita una hoja de un documento (banda tricolor arriba,
   papel crema, campos con etiqueta mono).
   ============================================================================ */
.rmb-auth{padding:56px 0 70px}
.rmb-auth__in{max-width:620px;margin-inline:auto}

.rmb-authhead{text-align:center;margin-block-end:26px}
.rmb-authhead .rmb-sechead__kick{justify-content:center}
.rmb-authhead .rmb-sechead__kick::before{display:none}
.rmb-authhead__h{font-family:var(--rmb-serif);font-weight:800;font-size:clamp(28px,4vw,40px);
  line-height:1.06;letter-spacing:-.025em;color:var(--rmb-ink);margin:8px 0 10px}
.rmb-rtl .rmb-authhead__h{line-height:1.3}
.rmb-authhead__sub{font-size:16px;color:var(--rmb-ink-2);max-width:52ch;margin-inline:auto;line-height:1.6}

/* ── Tarjeta del formulario ── */
.rmb-authcard{position:relative;background:var(--rmb-surface);border:1px solid var(--rmb-crema-3);
  border-radius:var(--rmb-radius-lg);box-shadow:var(--rmb-shadow);padding:30px 30px 28px;overflow:hidden;
  display:flex;flex-direction:column;gap:16px}
.rmb-authcard__band{position:absolute;inset-inline:0;inset-block-start:0;height:6px;
  background:linear-gradient(90deg,var(--rmb-granate),var(--rmb-oro) 50%,var(--rmb-verde))}

/* ── Campos ── */
.rmb-field{display:flex;flex-direction:column;gap:6px}
.rmb-field > label{font-family:var(--rmb-mrz);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--rmb-ink-3)}
.rmb-rtl .rmb-field > label{letter-spacing:.02em}
.rmb-field input[type=text],.rmb-field input[type=email],.rmb-field input[type=tel],
.rmb-field input[type=password],.rmb-field select,.rmb-field input[type=file]{
  width:100%;font-family:var(--rmb-sans);font-size:15px;color:var(--rmb-ink);background:var(--rmb-bg);
  border:1px solid var(--rmb-line-2);border-radius:var(--rmb-radius);padding:12px 14px;transition:border-color .15s,box-shadow .15s}
.rmb-field input:focus,.rmb-field select:focus{outline:none;border-color:var(--rmb-oro-d);
  box-shadow:0 0 0 3px rgba(198,162,74,.18)}
.rmb-field input[type=file]{padding:10px 12px;background:var(--rmb-surface-2);cursor:pointer}
.rmb-field__help{font-size:12px;color:var(--rmb-ink-3)}
.rmb-field.is-err input,.rmb-field.is-err select{border-color:var(--rmb-bad);background:#fbf1ee}
.rmb-err{font-size:12.5px;color:var(--rmb-bad);font-weight:500}
.rmb-err--block{display:block;margin-block-start:-8px}
.rmb-err a{color:var(--rmb-granate);text-decoration:underline}
.rmb-field2{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* mensaje general */
.rmb-formmsg{border-radius:var(--rmb-radius);padding:12px 14px;font-size:14px;font-weight:500}
.rmb-formmsg--err{background:#fbf1ee;color:var(--rmb-bad);border:1px solid rgba(156,58,49,.3)}

/* radios tipo tarjeta */
.rmb-radio{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rmb-radio__o{display:flex;align-items:center;gap:10px;background:var(--rmb-bg);border:1px solid var(--rmb-line-2);
  border-radius:var(--rmb-radius);padding:12px 14px;cursor:pointer;font-size:14.5px;color:var(--rmb-ink);
  transition:border-color .15s,background .15s}
.rmb-radio__o:hover{border-color:var(--rmb-oro)}
.rmb-radio__o input{accent-color:var(--rmb-granate);width:16px;height:16px;flex:none}
.rmb-radio__o:has(input:checked){border-color:var(--rmb-granate);background:var(--rmb-crema)}

/* consentimiento */
.rmb-consent{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;color:var(--rmb-ink-2);line-height:1.5;cursor:pointer}
.rmb-consent input{accent-color:var(--rmb-granate);width:17px;height:17px;flex:none;margin-block-start:1px}
.rmb-consent a{color:var(--rmb-granate);text-decoration:underline}
.rmb-consent.is-err span{color:var(--rmb-bad)}

.rmb-authcard__submit{width:100%;justify-content:center;margin-block-start:4px}
.rmb-authfoot{text-align:center;font-size:14px;color:var(--rmb-ink-2);margin-block-start:4px}
.rmb-authfoot a{color:var(--rmb-granate);font-weight:600;text-decoration:underline}

/* ══════════ PAGO ══════════ */
.rmb-amount{display:flex;align-items:baseline;justify-content:center;gap:12px;text-align:center;
  background:var(--rmb-surface);border:2px solid var(--rmb-ink);border-radius:var(--rmb-radius-lg);
  padding:16px 22px;margin-block-end:26px}
.rmb-amount__v{font-family:var(--rmb-serif);font-size:34px;color:var(--rmb-granate);line-height:1}
.rmb-amount__v small{font-size:15px;color:var(--rmb-ink-2)}

.rmb-paystep{display:flex;align-items:center;gap:12px;font-family:var(--rmb-serif);font-size:20px;
  color:var(--rmb-ink);margin:6px 0 16px}
.rmb-paystep span{width:30px;height:30px;flex:none;border-radius:50%;background:var(--rmb-granate);
  color:var(--rmb-oro-hi);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700}

.rmb-paygrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-block-end:30px}
.rmb-paybox{background:var(--rmb-surface);border:1px solid var(--rmb-crema-3);border-radius:var(--rmb-radius-lg);
  padding:20px 22px;box-shadow:var(--rmb-shadow-sm)}
.rmb-paybox__head{display:flex;align-items:center;gap:12px;padding-block-end:14px;margin-block-end:14px;
  border-block-end:1px solid var(--rmb-line);font-family:var(--rmb-serif);font-size:16px;color:var(--rmb-ink)}
.rmb-paydata{display:grid;gap:10px}
.rmb-paydata > div{display:flex;justify-content:space-between;gap:14px;align-items:baseline}
.rmb-paydata dt{font-family:var(--rmb-mrz);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--rmb-ink-3);white-space:nowrap}
.rmb-rtl .rmb-paydata dt{letter-spacing:.02em}
.rmb-paydata dd{font-family:var(--rmb-mrz);font-size:14px;color:var(--rmb-ink);text-align:end;word-break:break-all;
  unicode-bidi:plaintext} /* IBAN/RIB se leen en LTR aunque el idioma sea árabe */
.rmb-paybox--empty{grid-column:1/-1;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;padding:30px 24px}
.rmb-paybox--empty p{color:var(--rmb-ink-2);max-width:46ch}
.rmb-authcard--pago{margin-block-start:0}

/* ── Estados (activo / en revisión) ── */
.rmb-state{text-align:center;background:var(--rmb-surface);border:1px solid var(--rmb-crema-3);
  border-radius:var(--rmb-radius-lg);box-shadow:var(--rmb-shadow);padding:48px 34px;
  display:flex;flex-direction:column;align-items:center;gap:14px}
.rmb-state__seal{width:72px;height:72px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  background:var(--rmb-ok);color:#fff;box-shadow:0 8px 22px rgba(44,94,67,.3)}
.rmb-state__seal--wait{background:transparent;border:3px dashed var(--rmb-oro);position:relative}
.rmb-state__seal--wait::after{content:"";position:absolute;inset:14px;border-radius:50%;
  border:2px solid var(--rmb-oro-d);opacity:.5}
.rmb-state .rmb-btn{margin-block-start:8px}

@media(max-width:560px){
  .rmb-field2,.rmb-radio,.rmb-paygrid{grid-template-columns:1fr}
  .rmb-authcard{padding:24px 20px 22px}
}

/* ── Acceso propio /entrar/ ─────────────────────────────────────────────
   Sustituye a wp-login.php. Reusa .rmb-authcard; solo añade la variante
   estrecha, la casilla "recordarme" y el botón a todo el ancho. */
.rmb-authcard--slim{max-width:430px;margin-inline:auto}
.rmb-check{display:flex;align-items:center;gap:9px;margin:2px 0 18px;cursor:pointer;
  font-size:14px;color:var(--rmb-ink,#33291f)}
.rmb-check input{width:17px;height:17px;flex:none;accent-color:var(--rmb-granate,#6E1B28);cursor:pointer}
.rmb-btn--full{width:100%;justify-content:center}
.rmb-authfoot--sep{text-align:center;margin-top:22px;padding-top:20px;
  border-top:1px solid var(--rmb-hair,#D8C9A6)}

/* ═══════════ /pago/ · elegir modalidad: mes a mes o curso anual ═══════════ */
.rmb-planpick{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 26px}
.rmb-plan{position:relative;display:flex;flex-direction:column;gap:6px;text-align:center;cursor:pointer;
  padding:20px 16px 18px;border:1.5px dashed var(--rmb-line-2);border-radius:16px;background:var(--rmb-surface);
  transition:border-color .15s,background .15s,transform .14s,box-shadow .15s}
.rmb-plan:hover{transform:translateY(-3px);box-shadow:0 14px 30px -18px rgba(60,34,16,.55)}
.rmb-plan input{position:absolute;opacity:0;pointer-events:none}
.rmb-plan__k{font-family:var(--rmb-mrz);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--rmb-ink-3)}
.rmb-rtl .rmb-plan__k{letter-spacing:.02em}
.rmb-plan__v{font-family:var(--rmb-serif);font-weight:800;font-size:clamp(1.6rem,4vw,2.1rem);color:var(--rmb-ink);line-height:1.1}
.rmb-plan__v small{font-size:.95rem;font-weight:600;color:var(--rmb-ink-3)}
.rmb-plan__d{font-size:12.5px;color:var(--rmb-ink-2);line-height:1.4}
.rmb-plan__badge{position:absolute;top:-11px;inset-inline-start:50%;translate:-50% 0;white-space:nowrap;
  font-family:var(--rmb-mrz);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  background:linear-gradient(150deg,var(--rmb-granate),var(--rmb-granate-d));color:var(--rmb-oro-hi,#FBE7A2);
  border:1.5px solid var(--rmb-oro);border-radius:999px;padding:4px 14px}
.rmb-rtl .rmb-plan__badge{translate:50% 0;letter-spacing:.02em}
.rmb-plan:has(input:checked){border:2px solid var(--rmb-granate);background:color-mix(in srgb,var(--rmb-granate) 5%,var(--rmb-surface));
  box-shadow:0 16px 34px -18px rgba(110,27,40,.5)}
.rmb-plan:has(input:checked) .rmb-plan__v{color:var(--rmb-granate)}
.rmb-plan:has(input:checked)::after{content:"✓";position:absolute;top:10px;inset-inline-end:10px;width:24px;height:24px;
  border-radius:50%;background:var(--rmb-granate);color:#fff;font-size:13px;font-weight:800;display:grid;place-items:center}
.rmb-plan--year:has(input:checked){border-color:var(--rmb-oro-d)}
@media(max-width:560px){.rmb-planpick{grid-template-columns:1fr;gap:18px}}
