/* Página de registro — complementa auth.css (mismo estilo que el login) */
.rg-step{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:800;color:#0f172a;margin-bottom:12px}
.rg-step span{width:24px;height:24px;border-radius:999px;background:#1f5fbf;color:#fff;font-size:12px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.rg-lbl{font-size:13px;font-weight:600;color:#0f172a}
.rg-opt{font-weight:500;color:#64748b}
.rg-in,.rg-in[type]{width:100%;padding:12px 14px;background:#f8fafc;border:1px solid #cbd5e1;border-radius:12px;font-size:15px;color:#0f172a}
.rg-in:focus,.rg-in[type]:focus{outline:none;border-color:#1f5fbf;background:#fff;box-shadow:0 0 0 3px rgba(31,95,191,.15)}
.rg-in.is-bad,.rg-in[type].is-bad{border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.12)}
.rg-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}

.rg-plans{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.rg-plan{display:flex;flex-direction:column;gap:3px;padding:12px 13px;border:1.5px solid #e2e8f0;border-radius:14px;cursor:pointer;background:#fff;transition:.15s;min-width:0}
.rg-plan:hover{border-color:rgba(31,95,191,.45)}
.rg-plan.is-on{border-color:#1f5fbf;background:rgba(31,95,191,.05);box-shadow:0 0 0 3px rgba(31,95,191,.12)}
.rg-plan:focus-within{outline:2px solid rgba(31,95,191,.5);outline-offset:2px}
.rg-plan-name{font-size:14px;font-weight:800;color:#0f172a;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.rg-plan-name em{font-style:normal;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#194da3;background:rgba(31,95,191,.1);padding:2px 7px;border-radius:999px}
.rg-plan-price{font-size:12.5px;font-weight:600;color:#475569}
.rg-hint{font-size:12px;color:#64748b;margin-top:8px}

.rg-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.rg-chip{padding:7px 12px;border-radius:999px;border:1px solid #cbd5e1;font-size:13px;font-weight:600;color:#334155;cursor:pointer;background:#fff;transition:.15s}
.rg-chip:hover{border-color:#1f5fbf}
.rg-chip.is-on{background:#1f5fbf;border-color:#1f5fbf;color:#fff}
.rg-chip:focus-within{outline:2px solid rgba(31,95,191,.5);outline-offset:2px}

.rg-eye{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#64748b;display:flex}
.rg-rules{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.rg-rules li{font-size:11.5px;font-weight:600;color:#64748b;background:#f1f5f9;padding:3px 9px;border-radius:999px;transition:.15s}
.rg-rules li.ok{color:#15803d;background:#dcfce7}
.rg-rules li.ok::before{content:'✓ '}

.rg-err{padding:11px 14px;border-radius:12px;background:rgba(220,38,38,.08);border:1px solid rgba(220,38,38,.2);color:#b91c1c;font-size:13.5px;font-weight:600}
.rg-err button{margin-left:6px;color:#1f5fbf;text-decoration:underline;font-weight:700}

.rg-done{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:8px 0}
.rg-done-ic{width:72px;height:72px;border-radius:999px;background:#dcfce7;color:#15803d;display:flex;align-items:center;justify-content:center;animation:rgPop .5s cubic-bezier(.16,1,.3,1)}
.rg-done-ic .material-symbols-outlined{font-size:38px}
.rg-btn2{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px;border-radius:12px;border:1px solid #cbd5e1;font-weight:600;font-size:14px;color:#0f172a;background:#fff}
.rg-btn2:hover{border-color:#1f5fbf;color:#1f5fbf}
@keyframes rgPop{from{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}

@media (max-width:420px){.rg-plans{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.rg-done-ic{animation:none}}

/* ── Asistente por pasos (v2) ── */
.rg-progress{display:flex;flex-direction:column;gap:8px}
.rg-progress-top{display:flex;justify-content:space-between;font-size:12px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em}
.rg-progress-top #rgStepName{color:#1f5fbf}
.rg-bar{height:6px;border-radius:999px;background:#e2e8f0;overflow:hidden}
.rg-bar span{display:block;height:100%;width:33%;border-radius:999px;background:linear-gradient(90deg,#1f5fbf,#3a7bd5);transition:width .35s cubic-bezier(.16,1,.3,1)}
.rg-pane{border:0;padding:0;margin:0;min-width:0}
.rg-pane[hidden]{display:none!important}
.rg-in-anim{animation:rgIn .3s cubic-bezier(.16,1,.3,1)}
@keyframes rgIn{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
.rg-nav{display:flex;gap:10px}
.rg-back,.rg-next{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:14px 18px;border-radius:12px;font-weight:700;font-size:15px;transition:.15s;min-height:50px}
.rg-back{border:1px solid #cbd5e1;background:#fff;color:#0f172a}
.rg-back:hover{border-color:#1f5fbf;color:#1f5fbf}
.rg-next{flex:1;background:#1f5fbf;color:#fff;box-shadow:0 6px 16px -8px rgba(31,95,191,.6)}
.rg-next:hover{opacity:.95}
.rg-next:active,.rg-back:active{transform:scale(.98)}
.rg-next[hidden],.rg-back[hidden]{display:none}
.rg-next:disabled{opacity:.6}
.rg-plan{min-height:74px;justify-content:center}

/* Tablet y escritorio: un poco más de aire */
@media (min-width:768px){
  .rg-plans{gap:10px}
  .rg-plan{padding:14px 16px}
}
/* Celular: botones fijos abajo para no tener que hacer scroll */
@media (max-width:640px){
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}
  .rg-nav{position:fixed;left:0;right:0;bottom:0;z-index:20;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-top:1px solid #e2e8f0}
  .rg-done ~ .rg-nav{display:none}
}
@media (prefers-reduced-motion:reduce){.rg-in-anim{animation:none}.rg-bar span{transition:none}}

/* Aviso legal bajo el botón (último paso) */
.rg-legal{font-size:12px;line-height:1.5;color:#5f6f86;text-align:center}
.rg-legal a{color:#1f5fbf;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.rg-legal a:hover{color:#194da3}

/* Tarjetas de plan: insignia en su propia línea cuando van en 2 columnas (no se parte junto al nombre) */
.rg-plan{justify-content:flex-start}
@media (min-width:421px){
  .rg-plan-name{flex-direction:column;align-items:flex-start;gap:5px}
  .rg-plan-name em{line-height:1.35;border-radius:8px}
}
/* Ojo de la contraseña: área táctil de 40px */
.rg-eye{right:4px;width:40px;height:40px;align-items:center;justify-content:center;border-radius:10px}
.rg-eye:hover{color:#0f172a;background:#f1f5f9}
.rg-chip{min-height:36px;display:inline-flex;align-items:center}

/* Plan elegido: check + "Seleccionado" (ya no avanza solo) y resumen con "Cambiar" en los pasos siguientes */
.rg-plan{position:relative;padding-right:40px}
.rg-plan::after{content:"";position:absolute;top:12px;right:12px;width:20px;height:20px;border-radius:50%;border:1.5px solid #cbd5e1;background:#fff;transition:.15s}
.rg-plan.is-on::after{border-color:#1f5fbf;background:#1f5fbf url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/13px no-repeat}
.rg-plan-ok{display:none;font-size:11px;font-weight:800;color:#1f5fbf;text-transform:uppercase;letter-spacing:.04em;margin-top:2px}
.rg-plan.is-on .rg-plan-ok{display:block}
.rg-plansum{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-radius:12px;background:rgba(31,95,191,.06);border:1px solid rgba(31,95,191,.18);font-size:13.5px;color:#334155}
.rg-plansum[hidden]{display:none}
.rg-plansum b{color:#0f172a}
.rg-plansum button{font-weight:700;color:#1f5fbf;background:none;border:0;padding:4px 2px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}


/* País y moneda (buscadores del paso 2 — assets/js/registro-combo.js) */
.rg-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:480px){.rg-two{grid-template-columns:1fr}}
.rg-combo{position:relative}
.rg-combo-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;padding:8px 12px;border:1.5px solid #e2e8f0;border-radius:12px;background:#fff;color:#0f172a;font:600 14px Inter,system-ui,sans-serif;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.rg-combo-btn:hover{border-color:rgba(31,95,191,.45)}
.rg-combo.is-open .rg-combo-btn,.rg-combo-btn:focus-visible{border-color:#1f5fbf;box-shadow:0 0 0 3px rgba(31,95,191,.14);outline:none}
.rg-combo-btn>.material-symbols-outlined{font-size:20px;color:#64748b;transition:transform .2s}
.rg-combo.is-open .rg-combo-btn>.material-symbols-outlined{transform:rotate(180deg)}
.rg-combo-val{display:flex;align-items:center;gap:10px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.rg-combo-pop{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:40;min-width:260px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 24px 48px -18px rgba(15,23,42,.3);padding:8px;animation:rgPop .16s ease}
.rg-combo[data-combo="currency"] .rg-combo-pop{left:auto}
@keyframes rgPop{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.rg-combo-q{width:100%;height:40px;padding:0 12px;border:1.5px solid #e2e8f0;border-radius:10px;font:500 14px Inter,system-ui,sans-serif;outline:none;margin-bottom:6px}
.rg-combo-q:focus{border-color:#1f5fbf}
.rg-combo-list{max-height:260px;overflow:auto;overscroll-behavior:contain}
.rg-combo-sec{margin:8px 8px 4px;font-size:10.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#94a3b8}
.rg-combo-opt{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;cursor:pointer}
.rg-combo-opt:hover,.rg-combo-opt.is-act{background:#f1f5f9}
.rg-combo-opt[aria-selected="true"]{background:rgba(31,95,191,.08)}
.rg-combo-empty{padding:16px;text-align:center;color:#64748b;font-size:13px}
.rg-ot{display:flex;flex-direction:column;min-width:0;line-height:1.25}
.rg-combo-val .rg-ot{flex-direction:row;gap:0}
.rg-ot b{font-size:13.5px;font-weight:700;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rg-ot small{font-size:11.5px;color:#64748b}
.rg-combo-val .rg-ot b{font-weight:600}
.rg-flag{font-size:20px;line-height:1;flex-shrink:0}
.rg-iso,.rg-sym{display:inline-grid;place-items:center;min-width:30px;height:24px;padding:0 5px;border-radius:7px;background:#eef3fb;color:#1f5fbf;font-size:11px;font-weight:800;flex-shrink:0;letter-spacing:.02em}
.rg-sym{font-size:12px}
.rg-tel{display:flex;align-items:stretch}
.rg-tel-pre{display:inline-flex;align-items:center;padding:0 10px;border:1.5px solid #e2e8f0;border-right:0;border-radius:12px 0 0 12px;background:#f8fafc;color:#334155;font:700 13.5px Inter,system-ui,sans-serif}
.rg-tel .rg-in{border-top-left-radius:0!important;border-bottom-left-radius:0!important;min-width:0;flex:1}
.rg-combo-val .rg-ot{gap:4px}
