/* Diseño aprobado del login. Aislado de registro, recuperación y demás vistas. */
html:has(.auth-login-design){background:#fbf8f0}
body.auth-login-design{min-height:100dvh;background:#fbf8f0;color:#10233f;overflow-x:hidden}
.auth-login-design .client-login-header{height:62px;padding:0 max(20px,calc((100vw - 820px)/2));display:flex;align-items:center;background:#fff;border-bottom:1px solid #efdfc3}
.auth-login-design .client-login-header-brand{display:flex;align-items:center;gap:12px;min-width:0}
.auth-login-design .client-login-header-brand img{width:36px;height:36px;flex:none;border-radius:50%;border:1px solid #f1b99c;background:#fff;object-fit:cover}
.auth-login-design .client-login-header-brand strong{font:700 clamp(.9rem,1.3vw,1.08rem)/1.2 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.auth-login-design .auth-layout{width:min(820px,calc(100% - 36px));min-height:min(485px,calc(100dvh - 105px));height:auto;max-height:none;margin:22px auto;display:grid;grid-template-columns:44% 56%;overflow:hidden;border:1px solid #efdfc3;border-radius:20px;background:#fff;box-shadow:0 16px 42px rgba(64,34,10,.1)}
.auth-login-design .auth-visual{position:relative;top:auto;height:auto;max-height:none;min-height:0;padding:24px;border:0;border-radius:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;text-align:center;color:#fff;background:linear-gradient(137deg,#30100c 0%,#923719 53%,#e57b29 100%)}
.auth-login-design .auth-visual:before{width:440px;height:440px;right:-200px;top:-200px;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 60px rgba(255,255,255,.025),0 0 0 120px rgba(255,255,255,.02)}
.auth-login-design .auth-visual:after{width:270px;height:270px;left:-150px;bottom:-160px;background:rgba(255,255,255,.035)}
.auth-login-design .client-login-identity,.auth-login-design .client-login-message{position:relative;z-index:1}
.auth-login-design .client-login-identity{display:flex;flex-direction:column;align-items:center;gap:8px}
.auth-login-design .client-login-identity img{width:80px;height:80px;border:2px solid rgba(255,255,255,.55);border-radius:50%;background:#fff;object-fit:cover;box-shadow:0 10px 25px rgba(39,11,7,.2)}
.auth-login-design .client-login-identity strong{font-size:.86rem;letter-spacing:.045em}
.auth-login-design .client-login-message h1{margin:0 0 9px;color:#fff;font:700 clamp(1.85rem,2.7vw,2.2rem)/1.08 Georgia,serif;letter-spacing:-.035em}
.auth-login-design .client-login-message p{max-width:285px;margin:0 auto;color:#fff4e9;font-size:.8rem;line-height:1.42}
.auth-login-design .auth-content{height:auto;min-height:0;max-height:none;padding:27px;display:grid;place-items:center;overflow:visible;background:#fff}
.auth-login-design .auth-card{width:min(100%,330px);margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;animation:none}
.auth-login-design .mobile-brand,.auth-login-design .install-link{display:none}
.auth-login-design .card-heading h2{margin:0 0 14px;color:#10233f;font:700 clamp(1.75rem,2.3vw,2rem)/1.12 Georgia,serif;letter-spacing:-.03em}
.auth-login-design .auth-tabs{margin:0 0 15px;padding:0;gap:0;border:0;border-bottom:1px solid #d8e0e9;border-radius:0;background:transparent}
.auth-login-design .auth-tabs a{min-height:40px;border-bottom:3px solid transparent;border-radius:0;color:#617188;font-size:.82rem;font-weight:700;box-shadow:none}
.auth-login-design .auth-tabs a.active{border-bottom-color:#176fd1;color:#176fd1;background:transparent;box-shadow:none}
.auth-login-design .form-grid{gap:12px;margin:0}
.auth-login-design .field{gap:7px}
.auth-login-design .field>span{color:#10233f;font-size:.81rem;font-weight:750}
.auth-login-design .field input{height:45px;padding:0 13px;border:1px solid #dbb982;border-radius:9px;background:#fff;font-size:.92rem}
.auth-login-design .field input:focus{border-color:#176fd1;box-shadow:0 0 0 3px rgba(23,111,209,.12)}
.auth-login-design .text-link{display:block;width:max-content;max-width:100%;margin:12px 0 0 auto;color:#176fd1;text-align:right;font-size:.77rem;font-weight:750}
.auth-login-design .button.primary.wide{min-height:44px;margin-top:15px;border-radius:9px;color:#fff;background:#176fd1;box-shadow:0 8px 18px rgba(23,111,209,.2);font-size:.88rem}
.auth-login-design .button.primary.wide:hover{background:#125fb7;box-shadow:0 13px 25px rgba(23,111,209,.25)}
@media(max-width:820px){
  .auth-login-design .client-login-header{height:58px;padding:0 16px}
  .auth-login-design .client-login-header-brand img{width:35px;height:35px}
  .auth-login-design .client-login-header-brand strong{font-size:.84rem}
  .auth-login-design .auth-layout{width:100%;min-height:calc(100dvh - 58px);margin:0;display:block;overflow:visible;border:0;border-radius:0;box-shadow:none}
  .auth-login-design .auth-visual{width:100%;min-height:142px;height:auto;padding:14px 18px;gap:4px;border:0;align-items:center}
  .auth-login-design .client-login-identity{gap:4px}
  .auth-login-design .client-login-identity img{width:42px;height:42px;border-width:2px}
  .auth-login-design .client-login-identity strong{font-size:.66rem}
  .auth-login-design .client-login-message h1{margin:2px 0 5px;font-size:1.32rem}
  .auth-login-design .client-login-message p{max-width:310px;font-size:.73rem;line-height:1.35}
  .auth-login-design .auth-content{display:block;width:100%;min-height:0;padding:18px max(18px,env(safe-area-inset-right)) 24px max(18px,env(safe-area-inset-left));overflow:visible}
  .auth-login-design .auth-card{width:min(100%,380px);margin:0 auto}
  .auth-login-design .card-heading h2{margin:0 0 12px;font-size:1.56rem}
  .auth-login-design .auth-tabs{margin-bottom:16px}
  .auth-login-design .auth-tabs a{min-height:40px;font-size:.82rem}
  .auth-login-design .form-grid{gap:13px}
  .auth-login-design .field>span{font-size:.78rem}
  .auth-login-design .field input{height:44px}
  .auth-login-design .text-link{margin-top:12px;font-size:.76rem}
  .auth-login-design .button.primary.wide{min-height:44px;margin-top:17px}
}
