/* ViralPromo · Esmeralda — páginas de acceso (login, registro, recuperar) */
*{box-sizing:border-box}
:root{--bg:#131b1e;--surface:#263238;--raised:#304047;--text:#fff;--muted:#b4c5c2;--line:#405358;--accent:#66f7a1;--solid:#004d40}
html,body{margin:0}
body.ea{background:var(--bg);color:var(--text);font:14px/1.5 Arial,Helvetica,sans-serif;min-height:100vh}
.ea-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 18px;background:radial-gradient(ellipse at 50% 0,#00735e38,transparent 65%)}
.ea-content{width:100%;max-width:400px}
.ea-brand{display:flex;justify-content:center;margin-bottom:28px}
.ea-brand img{max-height:44px;width:auto;max-width:80%}
.ea-box{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:30px}
.ea-box h1{margin:0 0 7px;font-size:25px;letter-spacing:-1px;line-height:1.2}
.ea-sub{margin:0 0 24px;font-size:12px;color:var(--muted)}
.ea-field{display:block;margin-bottom:16px}
.ea-field>span{display:block;font-size:11px;font-weight:600;margin-bottom:8px}
.ea-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ea-box input.form-control,.ea-box select.form-control{width:100%;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:13px 14px;font:inherit;outline-offset:3px;min-width:0}
.ea-box input.form-control::placeholder{color:#7f9490}
.ea-box input.form-control:focus,.ea-box select.form-control:focus{outline:2px solid var(--accent);border-color:var(--accent)}
.ea-pass{position:relative}
.ea-pass input.form-control{padding-right:46px}
.ea-pass button{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:0;color:var(--muted);padding:7px;cursor:pointer}
.ea-pass svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;display:block}
.ea-help{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:6px 0 20px;font-size:11px}
.ea-check{display:flex;gap:8px;align-items:flex-start;cursor:pointer;color:var(--text)}
.ea-check input{accent-color:var(--solid);margin-top:2px}
.ea-box a{color:var(--accent);text-decoration:none}
.ea-box a:hover{text-decoration:underline}
.ea-btn{display:block;width:100%;text-align:center;background:var(--accent);color:var(--solid)!important;border:0;border-radius:10px;padding:15px 18px;font:inherit;font-weight:700;font-size:13px;cursor:pointer;text-decoration:none!important}
.ea-btn:hover{filter:brightness(1.07)}
.ea-btn:disabled{opacity:.55;cursor:not-allowed}
.ea-foot{text-align:center;font-size:11px;color:var(--muted);margin:20px 0 0}
.g-recaptcha{margin:0 0 16px;transform-origin:0 0}
@media(max-width:360px){.g-recaptcha{transform:scale(.85)}}
/* mensajes del script (process.js) */
.alert-message-reponse .alert{display:block;margin:0 0 14px;padding:11px 13px;border-radius:10px;font-size:12px;border:1px solid var(--line)}
.alert-message-reponse .alert.d-none{display:none}
.alert-message-reponse .alert-success{background:#173e35;border-color:#2b5c4d;color:#c8f7dc}
.alert-message-reponse .alert-warning,.alert-message-reponse .alert-danger{background:#3f2029;border-color:#7a3445;color:#ffc9d4}
.alert-message-reponse .icon-symbol{display:none}
/* login con Google */
.social-login{margin-top:14px}
.social-login .btn-google{display:block;background:var(--raised)!important;color:var(--text)!important;border:1px solid var(--line)!important;border-radius:10px!important;padding:13px 16px!important;text-align:center}
.social-login .btn-google a{color:var(--text)!important}
.social-login .google-logo{max-height:20px;width:auto;margin-right:8px;vertical-align:middle}
@media(max-width:420px){.ea-box{padding:24px 20px}.ea-row{grid-template-columns:1fr}}
.ea-box select.form-control{-webkit-appearance:none;appearance:none;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b4c5c2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}
.ea-box select.form-control option{background:#263238;color:#fff}
