/* Underc0de · registro (action=signup), 2026-11-11. Vaciar este archivo revierte lo visual. */

/* ---------- contenedor: una columna centrada ---------- */
body.u0 form#registration{max-width:600px;margin:0 auto}
body.u0 form#registration > .cat_bar{display:none}
body.u0 form#registration .roundframe{padding:1.25rem 1.5rem !important;margin:0 0 1rem !important}
body.u0 form#registration .title_bar{margin:0}
body.u0 form#registration .title_bar .titlebg{font-size:.8rem;letter-spacing:.08em}
body.u0 form#registration fieldset{border:0 !important;margin:0 !important;padding:0 !important;min-width:0;background:none !important;box-shadow:none !important}

/* ---------- pasos ---------- */
body.u0 .u0r-steps{display:flex;align-items:center;gap:.6rem;max-width:600px;margin:0 auto 1rem;padding:0;list-style:none;
  font:600 .8rem var(--f-ui);letter-spacing:.04em;color:var(--txt-3)}
body.u0 .u0r-steps li{display:flex;align-items:center;gap:.5rem;white-space:nowrap}
body.u0 .u0r-steps li + li::before{content:"";width:2rem;height:1px;background:var(--line);margin-right:.1rem}
body.u0 .u0r-steps .u0r-n{flex:none;box-sizing:border-box;padding:0;line-height:1;font-style:normal;display:grid;place-items:center;width:1.6rem;height:1.6rem;border:1px solid var(--line);border-radius:50%;font-size:.75rem}
body.u0 .u0r-steps .u0r-on{color:#fff}
body.u0 .u0r-steps .u0r-on .u0r-n{background:var(--celeste);border-color:var(--celeste);color:#000}
body.u0 .u0r-steps .u0r-ok .u0r-n{border-color:var(--celeste);color:var(--celeste)}
body.u0 .u0r-intro{max-width:600px;margin:0 auto 1rem;color:var(--txt-2);line-height:1.55}
body.u0 .u0r-intro b{color:#fff}

/* ---------- paso 1: acuerdo en una caja con scroll ---------- */
body.u0 form#registration.u0r-agree .roundframe{max-height:min(34vh,18rem);overflow-y:auto;overscroll-behavior:contain;
  padding:1rem 1.25rem !important;font-size:.86rem;line-height:1.6;color:var(--txt-2);scrollbar-width:thin;scrollbar-color:var(--line) transparent;
  -webkit-mask-image:linear-gradient(#000 calc(100% - 2.5rem),transparent);mask-image:linear-gradient(#000 calc(100% - 2.5rem),transparent)}
/* resumen en tarjetas */
body.u0 .u0r-sum{list-style:none;margin:0 0 1.25rem;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
body.u0 .u0r-sum li{display:flex;gap:.75rem;align-items:flex-start;padding:.85rem .9rem;background:rgba(60,183,234,.05);border:1px solid var(--line-soft);clip-path:var(--notch-s)}
body.u0 .u0r-sum li > span{font-size:1.25rem;line-height:1.2;flex:none}
body.u0 .u0r-sum b{display:block;margin:0 0 .2rem;color:#fff;font:700 .9rem var(--f-ui)}
body.u0 .u0r-sum div{font-size:.84rem;line-height:1.45;color:var(--txt-2)}
/* acuerdo completo */
body.u0 .u0r-termshead{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 .4rem;
  font:600 .75rem var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--txt-3)}
body.u0 .u0r-termshead .u0r-more{text-transform:none;letter-spacing:0;font-weight:400;color:var(--celeste)}
body.u0 .u0r-termshead.u0r-read .u0r-more{visibility:hidden}
body.u0 ol.u0r-terms{margin:0;padding:0 0 1.5rem 1.6rem;list-style:decimal outside !important}
body.u0 ol.u0r-terms li{display:list-item !important;list-style:inherit !important;margin:0 0 .8rem;padding-left:.35rem}
body.u0 ol.u0r-terms li::marker{color:var(--celeste);font-weight:700}
body.u0 .u0r-links{margin:.6rem 0 1.25rem;font-size:.85rem;color:var(--txt-3)}
body.u0 form#registration.u0r-agree #confirm_buttons{margin-top:0}
body.u0 form#registration.u0r-agree .roundframe:focus-visible{outline:2px solid var(--celeste);outline-offset:2px}

/* ---------- paso 2: campos ---------- */
body.u0 form#registration dl.register_form{display:block;margin:0;overflow:visible}
body.u0 form#registration dl.register_form dt,
body.u0 form#registration dl.register_form dd{float:none !important;width:auto !important;margin:0;padding:0;text-align:left}
body.u0 form#registration dl.register_form dt{margin:0 0 .35rem}
body.u0 form#registration dl.register_form dt strong{font:600 .85rem var(--f-ui);color:var(--txt-2);letter-spacing:.02em}
body.u0 form#registration dl.register_form dd{margin:0 0 1.1rem;position:relative}
body.u0 form#registration dl.register_form input[type=text],
body.u0 form#registration dl.register_form input[type=email],
body.u0 form#registration dl.register_form input[type=password]{width:100% !important;max-width:none;box-sizing:border-box;min-height:2.75rem;font-size:16px}
body.u0 form#registration input:focus-visible{outline:2px solid var(--celeste);outline-offset:1px}
/* los íconos de SMF (✓ / ⚠) quedan dentro del campo, a la derecha */
body.u0 form#registration dd > span[id$="_div"]{position:absolute;right:.6rem;top:1.375rem;transform:translateY(-50%);line-height:0}
body.u0 form#registration dd > span[id$="_div"] a{display:block;line-height:0}
body.u0 form#registration #smf_autov_username,body.u0 form#registration #smf_autov_pwverify{padding-right:2.4rem !important}
body.u0 form#registration .u0l-pw input{padding-right:7.5rem !important}
body.u0 form#registration .u0l-pw + span[id$="_div"]{right:5.6rem}
/* ayuda debajo de cada campo */
body.u0 .u0r-hint{display:block;margin:.4rem 0 0;font-size:.82rem;line-height:1.4;color:var(--txt-3)}
body.u0 .u0r-hint.bad{color:#f0c674}
body.u0 .u0r-hint.good{color:#7dffb0}
/* checkbox de anuncios en una línea */
body.u0 form#registration #notify_announcements{display:flex !important;flex-direction:row-reverse;justify-content:flex-end;align-items:flex-start;gap:.7rem;margin:.25rem 0 0}
body.u0 form#registration #notify_announcements dt,body.u0 form#registration #notify_announcements dd{margin:0}
body.u0 form#registration #notify_announcements dt strong{font-weight:400;color:var(--txt-2);font-size:.9rem;line-height:1.4}
body.u0 form#registration #notify_announcements label{cursor:pointer}
body.u0 form#registration #notify_announcements input{width:1.15rem;height:1.15rem;margin:.1rem 0 0;accent-color:var(--celeste)}

/* ---------- verificación ---------- */
body.u0 form#registration .verification_control{display:flex;flex-direction:column;align-items:center;gap:.5rem}
body.u0 form#registration .verification_control > br{display:none}
body.u0 form#registration .verification_control .smalltext{font-size:.9rem;color:var(--txt-2)}
body.u0 form#registration .verification_control input[type=text]{width:8rem !important;min-height:2.6rem;text-align:center;font-size:16px;margin-top:.35rem}
body.u0 form#registration .g-recaptcha{display:flex;justify-content:center;max-width:100%}

/* ---------- botones ---------- */
body.u0 form#registration #confirm_buttons{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;margin:0;padding:0;text-align:center}
body.u0 form#registration #confirm_buttons input[type=submit]{width:100%;min-height:3rem;font-size:.85rem;margin:0}
body.u0 .u0r-login{margin:.25rem 0 0;text-align:center;font-size:.9rem;color:var(--txt-2)}
body.u0 .u0r-login a{font-weight:600}

/* ---------- errores ---------- */
body.u0 div.errorbox:has(+ form#registration),body.u0 form#registration .errorbox{max-width:600px;margin:0 auto 1rem;box-sizing:border-box}

@media (max-width:560px){
  body.u0 form#registration .roundframe{padding:1rem !important}
  body.u0 .u0r-steps{font-size:.75rem}
  body.u0 .u0r-steps li + li::before{width:1.2rem}
  body.u0 form#registration.u0r-agree .roundframe{max-height:38vh}
  body.u0 .u0r-sum{grid-template-columns:minmax(0,1fr)}
  body.u0 .u0r-sum li{padding:.7rem .8rem}
}
