:root{--azul:#0B2447;--naranja:#F26A1B;--celeste:#00AFEF;--fondo:#eef2f7;--texto:#1b2433;--gris:#59647a;--borde:#cfd6e2}
*{box-sizing:border-box}
body{margin:0;background:var(--fondo);color:var(--texto);font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.cab{background:var(--azul);color:#fff;padding:18px 16px;text-align:center}
.marca{font-size:28px;font-weight:800;letter-spacing:.02em}.marca span{color:var(--naranja)}
.sub{opacity:.8;font-size:14px}
.caja{max-width:560px;margin:20px auto;background:#fff;border-radius:12px;padding:22px 18px;box-shadow:0 2px 10px rgba(11,36,71,.08)}
h1{color:var(--azul);font-size:24px;margin:0 0 6px}
.intro{color:var(--gris);margin:0 0 16px}
label{display:block;font-weight:600;margin:12px 0 0;font-size:15px}
label small{font-weight:400;color:var(--gris)}
input,select{display:block;width:100%;margin-top:5px;padding:12px;border:1px solid var(--borde);border-radius:8px;font:inherit;background:#fff}
input:focus,select:focus{outline:2px solid var(--celeste);border-color:var(--celeste)}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:400}
.check input{width:22px;height:22px;flex:0 0 22px;margin:2px 0 0}
.btn{display:block;width:100%;margin-top:18px;padding:15px;border:0;border-radius:10px;background:var(--naranja);color:#fff;font-family:inherit;font-size:18px;font-weight:700;line-height:1;cursor:pointer}
.btn:disabled{opacity:.6}
.btn.grande{font-size:22px;padding:20px;letter-spacing:.05em}
.nota{color:var(--gris);font-size:14px;text-align:center;margin:10px 0 0}
.error{background:#fdecea;color:#8a1c12;border-radius:8px;padding:10px 12px;margin:10px 0}
.bien{background:#e7f6ec;color:#185c2c;border-radius:8px;padding:10px 12px;margin:10px 0}
.aviso-prueba{background:#fff4e5;color:#7a4300;border-radius:8px;padding:8px 12px;margin:0 0 14px;font-size:14px}
.trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rnc-res{font-size:14px;color:var(--gris);min-height:1.2em;margin-top:4px}.rnc-res.si{color:#185c2c}
.dos{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cod{font-size:24px;letter-spacing:.3em;text-align:center}
.envio{font-size:14px;padding:6px 10px;border-radius:6px;margin:4px 0;background:#f4f6fa;color:var(--gris)}
.envio.enviado{background:#e7f6ec;color:#185c2c}.envio.fallido,.envio.bloqueado{background:#fdecea;color:#8a1c12}
.terminos{max-height:260px;overflow:auto;border:1px solid var(--borde);border-radius:8px;padding:4px 14px;margin:16px 0 8px;font-size:14px;background:#fafbfd}
.terminos h3{color:var(--azul);font-size:16px}
.terminos li{margin:0 0 8px}
.reenviar{text-align:center;margin-top:10px}
.enlace{background:none;border:0;color:var(--azul);text-decoration:underline;font-family:inherit;font-size:15px;cursor:pointer;padding:8px}
.hecho{width:64px;height:64px;border-radius:50%;background:#e7f6ec;color:#185c2c;font-size:36px;display:flex;align-items:center;justify-content:center;margin:0 auto 10px}
.pasos li{margin:6px 0}
.pie{text-align:center;color:var(--gris);font-size:12px;padding:10px 16px 24px}
@media (max-width:420px){.dos{grid-template-columns:1fr}.caja{margin:12px;padding:18px 14px}}
.hecho.sobre{background:#fff4e5;color:#7a4300}
