body.auth-page{
  background: var(--offwhite);
  color: var(--ink);
  font-family:"Montserrat",system-ui,-apple-system,Segoe UI,Roboto,Arial;
}

.auth-header{ padding: 24px 0 8px; }
.auth-header__inner{
  display:flex; align-items:center; justify-content:space-between;
}
.back-btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 14px; border-radius:12px;
  background:#fff; border:1px solid var(--stroke);
  color: var(--primary); font-weight:600; box-shadow: var(--shadow-sm);
}
.back-btn i{ font-size:18px; }
.brand--center{
  position:absolute; left:50%; transform:translateX(-50%);
  font-weight:800; font-size:28px; letter-spacing:.2px;
}
.spacer{ width:96px; } 
.auth{ padding: 8px 0 48px; }
.auth-card{
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 0;                      
  border-radius: 20px;
  overflow: hidden;             
  background: #fff;
  border: 1px solid var(--stroke);
  box-shadow: var(--shadow-sm);
}


.auth-media{
  margin: 0;                    
  padding: 0;
  min-height: 520px;
  background: url('../assets/auth/graduates.jpg') center/cover no-repeat;
  display: block;  
}
.auth-media img{ 
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
 }

.auth-form{
  padding: 26px 28px 28px;
}
.auth-title{
  margin:0 0 4px;
  font: 700 24px/1.25 "Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial;
  color: var(--primary);
}
.auth-sub{ margin:0 0 18px; color: var(--muted); }
.link-inline{ color: var(--secondary); font-weight:600; }

.field{ margin-bottom: 16px; }
.field label{
  display:block; margin-bottom:8px; font-weight:600; color: var(--primary);
}
.req{ color:#D66565; }
.field input{
  width:100%; height:54px;
  border:1px solid var(--stroke); border-radius:12px;
  padding:0 14px; font-size:16px; outline:0; background:#fff;
}
.field input:focus{ border-color: #b8c2e6; box-shadow: 0 0 0 4px rgba(16,33,75,.08); }

.hint{ display:block; margin-top:6px; color: var(--muted); font-size:12px; }
.error{ display:block; margin-top:6px; color:#b22; font-size:12px; }

.tos{ color: var(--muted); font-size:14px; margin: 8px 0 16px; }
.btn--block{ width:100%; }
.auth-submit{ height:52px; border-radius:12px; font-weight:700; }

@media (max-width: 1024px){
  .auth-card{ grid-template-columns: 1fr; }
  .auth-media{ min-height: 220px; }
  .brand--center{ position:static; transform:none; }
  .auth-header__inner{ justify-content:space-between; }
}