:root{--navy:#06152d;--navy-2:#0c2345;--gold:#f2b632;--gold-soft:#fff6dc;--ink:#101828;--muted:#667085;--line:#e4e7ec;--surface:#f5f7fa;--danger:#b42318;--success:#027a48;--warning:#b54708}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Arial,sans-serif;color:var(--ink)}body{background:var(--surface)}button,input{font:inherit}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(420px,.95fr)}.auth-showcase{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:44px 64px;color:#fff;background:linear-gradient(145deg,rgba(6,21,45,.96),rgba(10,42,82,.88)),url('../img/hero.svg') center/cover no-repeat}.auth-showcase:before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(242,182,50,.2);border-radius:50%;right:-180px;top:-140px;box-shadow:0 0 0 70px rgba(242,182,50,.04),0 0 0 140px rgba(242,182,50,.025)}.auth-logo{position:relative;z-index:1;width:230px}.auth-logo img{display:block;width:100%;height:auto}.auth-showcase-copy{position:relative;z-index:1;margin:auto 0;max-width:610px}.auth-kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.18em;font-weight:800;color:var(--gold)}.auth-kicker:before{content:"";width:34px;height:2px;background:var(--gold)}.auth-showcase h1{font-family:Poppins,Inter,sans-serif;font-size:clamp(38px,4vw,62px);line-height:1.08;margin:24px 0 18px;letter-spacing:-.035em}.auth-showcase p{font-size:17px;line-height:1.75;color:#d0d8e6;max-width:560px}.auth-benefits{position:relative;z-index:1;display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:#d9e0ea}.auth-benefits span{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);border-radius:999px;padding:9px 13px}.auth-form-side{display:grid;place-items:center;padding:44px;background:#fff}.auth-card{width:min(100%,460px)}.back-link{display:inline-flex;color:var(--muted);text-decoration:none;font-size:13px;font-weight:700;margin-bottom:44px}.back-link:hover{color:var(--navy)}.auth-heading{text-align:left;margin-bottom:27px}.lock-mark{width:48px;height:48px;border-radius:14px;background:var(--gold-soft);color:#b77900;display:grid;place-items:center;font-size:22px;font-weight:900;margin-bottom:18px}.auth-heading h2{font-family:Poppins,Inter,sans-serif;font-size:32px;letter-spacing:-.025em;margin:0 0 8px;color:var(--navy)}.auth-heading p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.auth-form{display:grid;gap:10px}.auth-form label{font-size:13px;font-weight:700;color:#344054;margin-top:6px}.label-row{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:6px}.label-row label{margin:0}.label-row a{font-size:12px;color:#986b10;text-decoration:none;font-weight:700}.auth-form input{width:100%;height:52px;border:1px solid #d0d5dd;border-radius:11px;padding:0 15px;color:var(--ink);background:#fff;outline:none;transition:.18s ease}.auth-form input:focus{border-color:#c58a12;box-shadow:0 0 0 4px rgba(242,182,50,.16)}.password-field{position:relative}.password-field input{padding-right:64px}.password-toggle{position:absolute;right:7px;top:7px;height:38px;border:0;border-radius:8px;background:#f2f4f7;color:#475467;font-size:12px;font-weight:800;padding:0 12px;cursor:pointer}.password-toggle:hover{background:#e8ebef}.auth-submit{height:52px;border:0;border-radius:11px;background:linear-gradient(135deg,#f7c64d,#e9a91a);color:var(--navy);font-weight:800;cursor:pointer;box-shadow:0 10px 24px rgba(225,157,18,.2);margin-top:13px;transition:.2s ease}.auth-submit:hover{transform:translateY(-1px);box-shadow:0 13px 28px rgba(225,157,18,.28)}.link-button{display:grid;place-items:center;text-decoration:none}.auth-help{text-align:center;color:#98a2b3;font-size:11px;line-height:1.55;margin-top:22px}.alert{border-radius:11px;padding:13px 15px;font-size:13px;line-height:1.5;margin:0 0 18px}.alert ul{margin:6px 0 0;padding-left:18px}.alert.error{background:#fff1f0;border:1px solid #fecdca;color:var(--danger)}.alert.success{background:#ecfdf3;border:1px solid #abefc6;color:var(--success)}.alert.warning{background:#fffaeb;border:1px solid #fedf89;color:var(--warning)}@media(max-width:900px){.auth-shell{grid-template-columns:1fr}.auth-showcase{min-height:310px;padding:30px 28px}.auth-showcase-copy{margin:55px 0 30px}.auth-showcase h1{font-size:38px;max-width:620px}.auth-benefits{display:none}.auth-form-side{padding:42px 24px}.back-link{margin-bottom:30px}}@media(max-width:520px){.auth-showcase{min-height:255px;padding:24px 20px}.auth-logo{width:190px}.auth-showcase-copy{margin:38px 0 10px}.auth-showcase h1{font-size:30px;margin:16px 0 10px}.auth-showcase p{font-size:14px;line-height:1.55}.auth-kicker{font-size:10px}.auth-form-side{padding:34px 20px 48px;place-items:start center}.auth-heading h2{font-size:28px}.auth-card{max-width:430px}}

/* Bloque 11: ajustes seguros para pantallas móviles */
.auth-page{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
@media(max-width:560px){.auth-page input{font-size:16px}}
