:root{--text:#173a4e;--muted:#7693a1;--accent:#0785ad;--deep:#0d3b53;--line:#dceaf0}*{box-sizing:border-box}body{min-height:100vh;margin:0;background:linear-gradient(125deg,#f6fbfd 0%,#eff7fa 58%,#d9f1f5 100%);color:var(--text);font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #1aabc9;outline-offset:3px}h1,h2,p{margin:0}.top{height:85px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 clamp(20px,6vw,90px);background:#ffffffb8;border-bottom:1px solid #e3eff3}.brand{display:flex;align-items:center;gap:11px;font-weight:840;font-size:21px;letter-spacing:-.5px;color:#16445a}.brand svg{height:39px;width:39px;background:#e2f7f9;border-radius:11px;padding:6px}.back{color:#518398;font-size:13px;font-weight:700}.back:hover{color:#0889ac}.shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,440px);align-items:center;gap:clamp(35px,8vw,115px);max-width:1200px;margin:0 auto;padding:clamp(52px,8vw,105px) 24px 65px;min-height:calc(100vh - 170px)}.intro .eyebrow{color:#1593aa;letter-spacing:2.1px;font-size:11px;font-weight:840;text-transform:uppercase;margin-bottom:20px}.intro h1{font-size:clamp(36px,4.1vw,59px);max-width:650px;letter-spacing:-2px;line-height:1.12}.intro h1 span{color:#0b8db1}.intro p{max-width:590px;font-size:16px;line-height:1.9;color:#70909c;margin-top:24px}.art{background:#ffffff9e;border:1px solid #ddeef2;border-radius:18px;margin-top:34px;padding:23px;box-shadow:0 20px 40px #176a8510}.art svg{display:block;width:100%;height:auto}.card{background:white;border-radius:19px;padding:38px;box-shadow:0 30px 65px #0d52641d;border:1px solid #e4eff2}.lock{background:#e9f8fa;color:#0f9db5;display:grid;place-items:center;width:49px;height:49px;border-radius:12px;font-size:27px;margin-bottom:23px}.card h2{font-size:27px;letter-spacing:-.8px}.card .sub{font-size:13px;color:#819ba6;margin-top:9px;margin-bottom:27px;line-height:1.65}.card form{display:flex;flex-direction:column}.card label{font-size:12px;font-weight:800;color:#345769;margin:13px 0 9px}.field{width:100%;border:1px solid #cddfe8;background:#f9fcfd;border-radius:10px;color:#123c51;padding:14px 13px;font-size:14px;min-width:0}.field:focus{border-color:#1a9cc1;background:white;outline:none;box-shadow:0 0 0 3px #1a9cc11c}.password-row{position:relative}.password-row .field{padding-right:84px}.reveal{position:absolute;right:8px;top:7px;padding:8px;border:0;background:transparent;color:#1584a5;font-weight:750;font-size:11px;cursor:pointer}.submit{border:0;background:linear-gradient(90deg,#087da5,#0a9ab0);color:#fff;padding:16px;border-radius:10px;font-weight:800;margin-top:26px;cursor:pointer;box-shadow:0 10px 25px #0c93ad28}.submit:hover{background:#05779a}.links{border-top:1px solid #eaf1f4;margin-top:26px;padding-top:22px;text-align:center;color:#839ba5;font-size:12px}.links a{color:#077fa7;font-weight:780}.alert{padding:13px;border-radius:9px;font-size:12px;line-height:1.65;margin-bottom:17px}.alert.error{background:#fff1ec;border:1px solid #fac9bb;color:#9f473e}footer{padding:26px;text-align:center;color:#7a99a7;font-size:12px;border-top:1px solid #dfebef}@media(max-width:850px){.shell{grid-template-columns:1fr;min-height:auto;max-width:600px;padding:52px 22px 75px;gap:35px}.intro h1{font-size:43px}.intro p{font-size:14px}.art{display:none}.card{padding:32px}.top{height:72px}}@media(max-width:500px){.intro h1{font-size:35px}.intro .eyebrow{font-size:9px}.card{padding:25px 19px}.back{font-size:11px}}
/* Mejoras puntuales para el formulario de registro */
.form-help{margin-top:7px;color:#7a96a3;font-size:11px;line-height:1.5}
.alert.success{background:#ecfdf5;border:1px solid #b5edd1;color:#146747}
