/* Match the public login design without the old full-height auth spacer. */
.student-password-page .student-password-main { width:min(560px,calc(100% - 40px));margin:0 auto;padding:28px 0 40px; }
.student-password-breadcrumb { display:flex;gap:10px;align-items:center;margin:0 0 16px;font-size:14px;color:#526b8b; }
.student-password-breadcrumb a { color:#1663cd;text-decoration:none; }
.student-password-card { padding:28px 32px;border:1px solid #dde8f6;border-radius:20px;background:#fff;box-shadow:0 10px 36px #1e5cc412; }
.student-password-heading { display:flex;align-items:center;gap:14px;margin-bottom:22px; }
.student-password-icon { display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:14px;background:#eaf3ff;color:#1663cd; }
.student-password-icon svg { width:26px;height:26px; }
.student-password-heading h1 { margin:0;color:#102b63;font-size:26px;line-height:1.4;letter-spacing:0; }
.student-password-heading p { margin:5px 0 0;color:#526b8b;font-size:14px;line-height:1.6; }
.student-password-notice { margin:0 0 20px;padding:12px 14px;border:1px solid #cee1ff;border-radius:10px;background:#f0f6ff;color:#294e7e;font-size:14px;line-height:1.7; }
.student-password-page .student-password-form { gap:16px; }
.student-password-page .login-field { gap:7px; }
.student-password-page .login-field input { min-height:48px;padding:11px 14px; }
.student-password-input { position:relative; display:block; min-width:0; }
.student-password-page .student-password-input input { box-sizing:border-box; width:100%; padding-right:54px; }
.student-password-page .student-password-eye { position:absolute; right:4px; top:50%; transform:translateY(-50%); display:grid; place-items:center; width:44px; height:44px; min-height:44px; padding:0; margin:0; border:0; border-radius:8px; background:transparent; color:#526b8b; box-shadow:none; cursor:pointer; }
.student-password-eye svg { width:22px; height:22px; pointer-events:none; }
.student-password-page .student-password-eye:hover,.student-password-page .student-password-eye[aria-pressed="true"] { background:#eaf3ff; color:#1663cd; }
.student-password-eye:focus-visible { outline:2px solid #1677ff; outline-offset:1px; }
.student-password-eye-slash { display:none; }
.student-password-eye[aria-pressed="true"] .student-password-eye-slash { display:block; }
.student-password-page .student-password-hint { margin:-8px 0 0;color:#526b8b;font-size:12px;line-height:1.7; }
.student-password-page .login-primary { margin-top:4px;background:#1663cd;border-color:#1663cd;color:#fff; }
.student-password-page .login-primary:hover { background:#1259b8;border-color:#1259b8; }
.student-password-back { display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:10px;color:#1663cd;font-size:14px;text-decoration:none; }
.student-password-reminder { margin:16px 0 0;text-align:center;color:#526b8b;font-size:12px;line-height:1.7; }
@media(max-width:768px) {
  .student-password-page .student-password-main { width:calc(100% - 32px);max-width:480px;padding:16px 0 20px; }
  .student-password-breadcrumb { margin-bottom:12px;font-size:13px; }
  .student-password-card { padding:22px 20px;border-radius:16px; }
  .student-password-heading { gap:10px;margin-bottom:18px; }
  .student-password-heading h1 { font-size:23px; }
  .student-password-heading p { font-size:13px; }
  .student-password-icon { flex-basis:42px;height:42px;border-radius:12px; }
}
