/* Modern authentication experience shared by admin, customer and vendor portals. */
:root{--auth-blue:#125fc9;--auth-navy:#082d66;--auth-orange:#ff7a00;--auth-text:#172033;--auth-muted:#667085}
body{min-height:100vh!important;height:auto!important;padding:28px 14px!important;background:radial-gradient(circle at 12% 10%,rgba(69,142,239,.28),transparent 34%),radial-gradient(circle at 90% 85%,rgba(255,122,0,.2),transparent 31%),linear-gradient(135deg,#071d3d,#0a3d82 60%,#125fc9)!important;align-items:center!important;overflow-y:auto!important}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:32px 32px}
.auth-container{position:relative;width:min(100%,440px)!important;max-width:440px!important;margin:auto!important;padding:34px!important;border:1px solid rgba(255,255,255,.72)!important;border-radius:20px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 28px 80px rgba(0,18,50,.36)!important;backdrop-filter:blur(18px)}
.auth-container:before{content:"MCB  •  SECURE ACCESS";display:block;margin-bottom:18px;color:var(--auth-blue);font-size:11px;font-weight:800;letter-spacing:1.5px;text-align:center}.auth-container h2{margin:0 0 24px!important;color:var(--auth-text);font-size:25px;letter-spacing:-.7px}.form-group{margin-bottom:16px!important}.form-group label{color:#344054!important;font-size:13px!important;font-weight:600!important}.auth-container input,.auth-container select,.auth-container textarea{min-height:47px;padding:11px 13px!important;border:1px solid #d5dce7!important;border-radius:10px!important;background:#fff!important;color:var(--auth-text)!important;font-size:14px!important;outline:none}.auth-container input:focus,.auth-container select:focus,.auth-container textarea:focus{border-color:var(--auth-blue)!important;box-shadow:0 0 0 4px rgba(18,95,201,.12)!important}.auth-container .btn{min-height:48px!important;border-radius:10px!important;background:linear-gradient(135deg,var(--auth-navy),var(--auth-blue))!important;box-shadow:0 8px 18px rgba(18,95,201,.24)!important;font-weight:700!important}.auth-container .forgot-link,.auth-container .switch-link{color:var(--auth-blue)!important}.error-msg{padding:10px 12px;border:1px solid #fecaca;border-radius:9px;background:#fef2f2;color:#b42318!important;font-size:13px}.success-msg{padding:10px 12px;border:1px solid #bbf7d0;border-radius:9px;background:#f0fdf4;color:#166534!important;font-size:13px}
@media(max-width:520px){body{padding:0!important;align-items:stretch!important}.auth-container{width:100%!important;max-width:none!important;min-height:100vh;margin:0!important;padding:28px 20px!important;border:0!important;border-radius:0!important;display:flex;flex-direction:column;justify-content:center}.auth-container h2{font-size:23px}}
.app-password-wrap{position:relative;width:100%}.app-password-wrap input{padding-right:50px!important}.app-password-toggle{position:absolute!important;right:5px!important;top:50%!important;transform:translateY(-50%)!important;width:40px!important;height:38px!important;min-height:38px!important;padding:0!important;display:grid!important;place-items:center!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#667085!important;box-shadow:none!important;cursor:pointer}.app-password-toggle:hover{background:#eef4fc!important;color:var(--auth-blue)!important}.app-password-toggle svg{width:20px;height:20px;pointer-events:none}
