/* Login layout for Co-opBank UI Framework 2026 */
html.cb-login-html, body.cb-login-body{width:100%;height:100%;overflow:hidden;background:linear-gradient(135deg,#eef7ff,#dbeafe);}
.cb-login-form{width:100vw;height:100vh;display:grid;grid-template-columns:minmax(440px,54%) minmax(380px,46%);font-family:var(--cb-font);}
.cb-login-left{position:relative;overflow:hidden;background:#e8f2ff;}
.cb-login-left img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block;}
.cb-login-left:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.02),rgba(255,255,255,.12));pointer-events:none;}
.cb-login-right{display:flex;align-items:center;justify-content:center;padding:clamp(16px,3.2vw,38px);background:linear-gradient(135deg,rgba(255,255,255,.97),rgba(239,246,255,.92));}
.cb-login-card{width:min(480px,100%);padding:clamp(24px,3.2vh,38px) clamp(24px,3.4vw,42px);border-radius:22px;background:rgba(255,255,255,.96);border:1px solid var(--cb-border);box-shadow:var(--cb-shadow-lg);}
.cb-login-avatar{width:64px;height:64px;margin:0 auto 18px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#edf6ff,#dbeafe);border:1px solid var(--cb-border);color:var(--cb-blue-800);}
.cb-login-avatar svg{width:36px;height:36px;}
.cb-login-title{margin:0;text-align:center;font-size:clamp(24px,2.1vw,32px);line-height:1.15;font-weight:850;color:var(--cb-blue-800);letter-spacing:-.5px;}
.cb-login-title-small{margin:10px 0 0;text-align:center;font-size:clamp(18px,1.3vw,22px);font-weight:750;color:var(--cb-blue-700);}
.cb-login-subtitle{margin:8px 0 26px;text-align:center;font-size:15px;color:var(--cb-muted);font-weight:600;}
.cb-login-field{position:relative;margin-bottom:14px;}
.cb-login-field-icon,.cb-login-eye{position:absolute;top:50%;transform:translateY(-50%);z-index:2;color:var(--cb-muted);font-size:17px;}
.cb-login-field-icon{left:18px;}.cb-login-eye{right:16px;cursor:pointer;user-select:none;}
.cb-login-input{width:100%;height:52px;padding:0 50px;border-radius:12px;border:1px solid var(--cb-border-2);outline:none;background:#fff;font-family:var(--cb-font);font-size:15px;font-weight:600;color:var(--cb-text);transition:border-color .18s,box-shadow .18s;}
.cb-login-input:focus{border-color:var(--cb-blue-600);box-shadow:0 0 0 4px rgba(0,110,220,.12);}
.cb-login-button{width:100%;height:52px;border:0;border-radius:12px;color:#fff;font-family:var(--cb-font);font-size:16px;font-weight:850;letter-spacing:.2px;text-transform:uppercase;cursor:pointer;background:linear-gradient(135deg,var(--cb-blue-600),var(--cb-blue-800));box-shadow:0 14px 30px rgba(0,91,172,.24);transition:transform .15s,box-shadow .15s;}
.cb-login-button:hover{transform:translateY(-1px);box-shadow:0 18px 36px rgba(0,91,172,.28);}
.cb-login-msg{display:block;min-height:24px;margin:12px 0 6px;text-align:center;font-size:14px;font-weight:750;color:#b91c1c;}
.cb-login-divider{height:1px;background:var(--cb-border);margin:24px 0 16px;}
.cb-login-version{text-align:center;color:var(--cb-muted);font-size:14px;line-height:1.55;font-weight:650;}.cb-login-version b{color:var(--cb-blue-800);}
@media(max-width:1180px){.cb-login-form{grid-template-columns:52% 48%;}.cb-login-card{width:min(440px,100%);}.cb-login-avatar{width:58px;height:58px;margin-bottom:14px}.cb-login-subtitle{margin-bottom:20px}.cb-login-input,.cb-login-button{height:48px}.cb-login-divider{margin:20px 0 14px}}
@media(max-height:760px){.cb-login-card{padding:20px 28px}.cb-login-avatar{width:50px;height:50px;margin-bottom:12px}.cb-login-avatar svg{width:30px;height:30px}.cb-login-subtitle{margin:6px 0 18px}.cb-login-field{margin-bottom:10px}.cb-login-input,.cb-login-button{height:46px}.cb-login-msg{margin:8px 0 4px}.cb-login-divider{margin:16px 0 12px}.cb-login-version{font-size:13px}}
@media(max-width:860px){html.cb-login-html,body.cb-login-body{overflow:auto}.cb-login-form{height:auto;min-height:100vh;grid-template-columns:1fr}.cb-login-left{height:26vh;min-height:190px}.cb-login-right{padding:18px}.cb-login-card{width:min(460px,100%)}}
