body.auth-body{
  min-height:100vh; margin:0; display:flex; align-items:center; justify-content:center;
  background:#0B111C; font-family:'Inter',sans-serif; padding:30px;
}
.auth-card{
  background:#121A29; border:1px solid #26314A; border-radius:18px; padding:40px; width:100%; max-width:440px; color:#E9EEF6;
}
.auth-card .logo{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:1.3rem; color:#fff; display:inline-block; margin-bottom:24px}
.auth-card .logo span,.auth-card .logo .text-brand,.auth-card .logo .brand-mark{color:var(--mint,#35D488)}
.brand-logo-img{max-height:36px; max-width:180px; object-fit:contain}
.auth-card h1{font-family:'Space Grotesk',sans-serif; font-size:1.6rem; margin-bottom:6px}
.auth-card .sub{color:#8C97AD; font-size:.92rem; margin-bottom:22px}
.auth-card .form-label{color:#C9D2E3; font-size:.88rem; font-weight:500}
.auth-card .form-control{background:#0B111C; border:1px solid #26314A; color:#fff; padding:10px 14px}
.auth-card .form-control:focus{background:#0B111C; border-color:#35D488; color:#fff; box-shadow:0 0 0 3px rgba(53,212,136,.15)}
.btn-brand{background:#35D488; border-color:#35D488; color:#06231A; font-weight:600; padding:11px}
.btn-brand:hover{background:#28c078; color:#06231A}
.auth-card .foot-link{margin-top:20px; text-align:center; font-size:.9rem; color:#8C97AD}
.auth-card .foot-link a{color:#35D488; font-weight:600}
.role-switch{display:flex; gap:8px; margin-bottom:22px; background:#0B111C; padding:5px; border-radius:10px; border:1px solid #26314A}
.role-switch a{flex:1; text-align:center; padding:9px 8px; border-radius:8px; color:#8C97AD; font-size:.85rem; font-weight:600; text-decoration:none}
.role-switch a.active{background:#35D488; color:#06231A}
.brand-badge{display:inline-flex; align-items:center; justify-content:center; width:26px; height:26px; border-radius:7px; background:var(--mint,#35D488); color:#06231A; font-weight:700; font-size:.85rem; margin-right:8px; vertical-align:middle}
.brand-text{vertical-align:middle}
