:root {
  --green:#16a355;
  --green-dark:#0d7d42;
  --blue:#2d8cff;
  --text:#111827;
  --muted:#6b7280;
  --line:#dfe3e7;
  --bg:#f7f8fa;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body{background:var(--bg);color:var(--text)}
button,input{font:inherit}
.ui-icon{stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}
.login-card{width:min(100%,430px);padding:34px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 35px rgba(15,23,42,.05)}
.login-logo{text-align:center;margin-bottom:20px}
.login-logo img{height:118px;width:auto}
.login-heading{text-align:center;margin-bottom:28px}
.login-heading h1{margin:0;font-size:25px;letter-spacing:-.025em}
.login-heading p{margin:7px 0 0;color:var(--muted);font-size:13px}
.field{margin:16px 0}
.field label{display:block;margin-bottom:6px;font-size:12px;font-weight:650}
.field input{width:100%;height:46px;padding:0 12px;border:1px solid #cfd5db;border-radius:8px;outline:none;background:#fff}
.field input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(45,140,255,.12)}
.field-error{display:block;margin-top:5px;color:#b42318;font-size:11px}
.form-options{margin:15px 0 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px}
.form-options label{display:flex;align-items:center;gap:7px;color:var(--text)}
.form-options input{accent-color:var(--green)}
.sign-in-button{width:100%;height:45px;border:0;border-radius:8px;background:var(--green);color:#fff;font-weight:700;cursor:pointer}
.sign-in-button:hover{background:var(--green-dark)}
.auth-alert{margin:0 0 15px;padding:10px 12px;border-radius:7px;font-size:12px}
.auth-alert-danger{background:#fff0ee;color:#a1261c}
.auth-alert-success{background:#edf9f2;color:#0b6d39}
.login-help{margin-top:22px;padding-top:17px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:7px;color:var(--muted);font-size:11px}
@media(max-width:520px){.login-card{padding:26px 20px;border-radius:10px}.login-logo img{height:100px}}


/* Patch 5.5 — public Login Help / Account Recovery Center */
.login-help-action{justify-content:center;flex-wrap:wrap}.login-help-action a{color:var(--green-dark);font-weight:750;text-decoration:none}.login-help-action a:hover{text-decoration:underline}
.login-help-page{min-height:100vh;background:#f7f8fa}.login-help-header{height:68px;padding:0 clamp(18px,4vw,48px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff}.login-help-brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none}.login-help-brand img{width:37px;height:48px;object-fit:contain}.login-help-brand span,.login-help-brand strong,.login-help-brand small{display:block}.login-help-brand strong{font-size:13px}.login-help-brand small{margin-top:3px;color:var(--muted);font-size:10px}.login-help-back{color:#475569;text-decoration:none;font-size:12px}.login-help-shell{width:min(100% - 28px,760px);margin:0 auto;padding:48px 0 70px}.login-help-heading{text-align:center;margin-bottom:25px}.login-help-heading>span{color:var(--green-dark);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.login-help-heading h1{margin:8px 0 7px;font-size:32px;letter-spacing:-.035em}.login-help-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.login-help-tabs{margin-bottom:12px;display:grid;grid-template-columns:1fr 1fr;padding:4px;border:1px solid var(--line);border-radius:10px;background:#fff}.login-help-tabs button{height:40px;border:0;border-radius:7px;background:transparent;color:#5c6570;font-size:12px;font-weight:700;cursor:pointer}.login-help-tabs button.active{background:#eef7f2;color:var(--green-dark)}.login-help-panel{padding:24px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.04)}.login-help-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.login-help-panel .field textarea,.login-help-panel .field select{width:100%;padding:12px;border:1px solid #cfd5db;border-radius:8px;background:#fff;color:var(--text);font:inherit;outline:none}.login-help-panel .field textarea:focus,.login-help-panel .field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(45,140,255,.12)}.optional{color:#8a919b;font-size:10px;font-weight:500}.login-help-contact-note{margin:4px 0 16px;padding:11px 12px;display:flex;gap:8px;align-items:flex-start;border-radius:8px;background:#f5f8f6;color:#52605a;font-size:11px;line-height:1.5}.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.login-status-card{margin-top:20px;border-top:1px solid var(--line);padding-top:20px}.login-status-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.login-status-head small,.login-status-head strong{display:block}.login-status-head small{color:var(--muted);font-size:10px}.login-status-head strong{margin-top:3px;font-size:14px}.login-status-badge{padding:6px 9px;border-radius:999px;background:#eef2f4;color:#46505a;font-size:10px;font-weight:800}.status-resolved{background:#e9f7ef;color:#0f7f45}.status-waiting_student{background:#fff7e8;color:#8a5a0c}.login-status-summary{margin:14px 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.login-status-summary>div{padding:12px;border:1px solid var(--line);border-radius:8px;background:#fafbfc}.login-status-summary span,.login-status-summary strong{display:block}.login-status-summary span{color:var(--muted);font-size:10px}.login-status-summary strong{margin-top:4px;font-size:12px}.login-status-messages h2,.login-status-timeline h2{font-size:13px}.login-status-message{margin-top:8px;padding:13px;border-radius:9px;background:#eef7f2}.login-status-message strong{font-size:11px}.login-status-message p{margin:6px 0;font-size:12px;line-height:1.6}.login-status-message small{color:#66756c;font-size:9px}.login-status-pending{padding:15px;border-radius:9px;background:#f5f6f7;color:#66707a;font-size:11px}.login-status-timeline{margin-top:18px}.login-status-timeline>div{display:grid;grid-template-columns:8px 1fr;gap:9px;margin:10px 0}.login-status-timeline>div>span{width:7px;height:7px;margin-top:5px;border-radius:50%;background:var(--green)}.login-status-timeline p{margin:0}.login-status-timeline strong,.login-status-timeline small{display:block}.login-status-timeline strong{font-size:11px}.login-status-timeline small{margin-top:2px;color:var(--muted);font-size:9px}.login-help-success{width:min(100% - 28px,620px);margin:70px auto;padding:35px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:center;box-shadow:0 18px 50px rgba(15,23,42,.06)}.success-mark{width:54px;height:54px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;background:#e9f7ef;color:var(--green-dark)}.login-help-success>span{color:var(--green-dark);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.login-help-success h1{margin:8px 0;font-size:27px}.login-help-success>p{margin:0 auto 20px;max-width:500px;color:var(--muted);font-size:12px;line-height:1.65}.reference-card{padding:16px;border:1px dashed #aeb8b1;border-radius:10px;background:#f7faf8}.reference-card small,.reference-card strong{display:block}.reference-card small{color:var(--muted);font-size:10px}.reference-card strong{margin:5px 0 10px;font:700 17px ui-monospace,SFMono-Regular,Menlo,monospace}.reference-card button{border:0;background:transparent;color:var(--green-dark);font-weight:750;font-size:11px;cursor:pointer}.success-note{margin-top:14px;padding:13px;text-align:left;border-radius:9px;background:#fff7e8}.success-note strong{font-size:11px}.success-note p{margin:4px 0 0;color:#6c5d40;font-size:10px;line-height:1.5}.success-actions{margin-top:20px;display:flex;justify-content:center;gap:9px}.success-actions a{min-height:38px;padding:0 13px;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:8px;color:var(--text);text-decoration:none;font-size:11px;font-weight:700}.success-actions a:first-child{background:var(--green);border-color:var(--green);color:#fff}.forced-password-notice{margin-bottom:14px;padding:14px;border:1px solid #f1c27d;border-radius:10px;background:#fff7ed;color:#7c2d12}.forced-password-notice strong{font-size:12px}.forced-password-notice p{margin:5px 0 0;font-size:11px;line-height:1.55}
@media(max-width:640px){.login-help-grid,.login-status-summary{grid-template-columns:1fr}.login-help-shell{padding-top:28px}.login-help-heading h1{font-size:27px}.login-help-panel{padding:18px}.login-help-header{padding-inline:14px}.login-help-back{font-size:10px}.success-actions{flex-direction:column}.success-actions a{justify-content:center}}

/* ======================================================================
   Patch 5.5b — Login Help / Account Recovery polish
   Warm, restrained, slim public-support experience inspired by modern
   conversational-product interfaces while keeping HU branding.
   ====================================================================== */
.login-help-body{
  --lh-bg:#f5f1e8;
  --lh-surface:#fffdf8;
  --lh-surface-2:#f0eadf;
  --lh-surface-3:#e9e1d4;
  --lh-text:#24211d;
  --lh-muted:#716b63;
  --lh-line:#ddd5c9;
  --lh-line-strong:#cfc5b7;
  --lh-green:#117a45;
  --lh-green-strong:#0b6538;
  --lh-green-soft:#e7f1ea;
  --lh-blue:#2563eb;
  --lh-danger:#a43c32;
  --lh-danger-soft:#f8ebe8;
  --lh-shadow:0 18px 55px rgba(66,54,37,.07);
  --lh-shadow-sm:0 8px 24px rgba(66,54,37,.055);
  background:
    radial-gradient(circle at 15% -10%, rgba(255,255,255,.88), transparent 33rem),
    var(--lh-bg);
  color:var(--lh-text);
}
.login-help-body .login-help-page{
  min-height:100vh;
  background:transparent;
}
.login-help-body .login-help-header{
  height:74px;
  padding:0 clamp(18px,4vw,54px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid rgba(167,154,137,.28);
  background:rgba(245,241,232,.78);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  position:sticky;
  top:0;
  z-index:20;
}
.login-help-body .login-help-brand{
  display:flex;
  align-items:center;
  gap:11px;
  color:var(--lh-text);
  text-decoration:none;
}
.login-help-body .login-help-brand img{
  width:34px;
  height:45px;
  object-fit:contain;
}
.login-help-body .login-help-brand span,
.login-help-body .login-help-brand strong,
.login-help-body .login-help-brand small{display:block}
.login-help-body .login-help-brand strong{
  font-size:13px;
  letter-spacing:-.01em;
}
.login-help-body .login-help-brand small{
  margin-top:2px;
  color:var(--lh-muted);
  font-size:10.5px;
}
.login-help-body .login-help-back{
  min-height:36px;
  padding:0 11px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  border-radius:999px;
  color:var(--lh-muted);
  text-decoration:none;
  font-size:11.5px;
  font-weight:650;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.login-help-body .login-help-back:hover{
  background:rgba(255,255,255,.55);
  color:var(--lh-text);
  transform:translateX(-1px);
}
.login-help-body .login-help-shell{
  width:min(100% - 32px,720px);
  margin:0 auto;
  padding:62px 0 46px;
}
.login-help-body .login-help-hero{
  max-width:660px;
  margin:0 auto 30px;
  text-align:center;
}
.login-help-body .login-help-kicker{
  color:var(--lh-green-strong);
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.login-help-body .login-help-hero h1{
  margin:11px auto 10px;
  max-width:650px;
  color:var(--lh-text);
  font-size:clamp(31px,5vw,48px);
  line-height:1.04;
  letter-spacing:-.045em;
  font-weight:690;
}
.login-help-body .login-help-hero>p{
  max-width:590px;
  margin:0 auto;
  color:var(--lh-muted);
  font-size:13.5px;
  line-height:1.7;
}
.login-help-body .login-help-assurance{
  margin-top:17px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:7px 18px;
  color:#665f56;
  font-size:10.5px;
}
.login-help-body .login-help-assurance span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.login-help-body .login-help-assurance .ui-icon{color:var(--lh-green)}
.login-help-body .login-help-alert{
  margin:0 0 14px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid #e5c5be;
  background:var(--lh-danger-soft);
  color:#7f2f27;
  box-shadow:none;
  font-size:11.5px;
  line-height:1.5;
}
.login-help-body .login-help-switch{
  width:min(100%,470px);
  margin:0 auto 14px;
  padding:5px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
  border:1px solid rgba(165,151,133,.34);
  border-radius:999px;
  background:rgba(231,223,211,.62);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5);
}
.login-help-body .login-help-switch button{
  min-width:0;
  height:42px;
  padding:0 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#675f55;
  font:inherit;
  font-size:11.5px;
  font-weight:720;
  cursor:pointer;
  transition:background .22s ease,color .22s ease,box-shadow .22s ease,transform .18s ease;
}
.login-help-body .login-help-switch button:hover:not(.active){
  background:rgba(255,255,255,.38);
  color:var(--lh-text);
}
.login-help-body .login-help-switch button.active{
  background:var(--lh-surface);
  color:var(--lh-text);
  box-shadow:0 3px 12px rgba(60,49,34,.09), inset 0 0 0 1px rgba(255,255,255,.6);
}
.login-help-body .login-help-switch button:focus-visible{
  outline:0;
  box-shadow:0 0 0 3px rgba(37,99,235,.16),0 3px 12px rgba(60,49,34,.09);
}
.login-help-body .login-help-switch-icon{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:currentColor;
  opacity:.84;
}
.login-help-body .login-help-panel{
  padding:30px;
  border:1px solid rgba(169,154,135,.35);
  border-radius:26px;
  background:rgba(255,253,248,.91);
  box-shadow:var(--lh-shadow);
  animation:loginHelpPanelIn .22s ease both;
}
.login-help-body .login-help-panel[hidden]{display:none!important}
@keyframes loginHelpPanelIn{
  from{opacity:0;transform:translateY(5px)}
  to{opacity:1;transform:none}
}
.login-help-body .login-help-panel-head{
  margin-bottom:20px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(173,159,141,.28);
}
.login-help-body .login-help-panel-head span{
  color:var(--lh-green-strong);
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.login-help-body .login-help-panel-head h2{
  margin:5px 0 5px;
  color:var(--lh-text);
  font-size:21px;
  line-height:1.2;
  letter-spacing:-.025em;
}
.login-help-body .login-help-panel-head p{
  margin:0;
  max-width:610px;
  color:var(--lh-muted);
  font-size:11.5px;
  line-height:1.62;
}
.login-help-body .login-help-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0 14px;
}
.login-help-body .login-help-contact-group{
  margin:2px 0 3px;
  padding:15px 15px 0;
  border:1px solid rgba(177,163,144,.32);
  border-radius:18px;
  background:rgba(239,233,223,.38);
}
.login-help-body .login-help-section-label{
  margin-bottom:-2px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.login-help-body .login-help-section-label span{
  font-size:10.5px;
  font-weight:760;
  color:#514b44;
}
.login-help-body .login-help-section-label small{
  padding:4px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.62);
  color:#7b7369;
  font-size:9px;
  font-weight:650;
}
.login-help-body .login-help-panel .field{
  margin:13px 0;
}
.login-help-body .login-help-panel .field label{
  margin-bottom:7px;
  color:#4d4841;
  font-size:10.5px;
  font-weight:720;
}
.login-help-body .login-help-panel .field input,
.login-help-body .login-help-panel .field textarea,
.login-help-body .login-help-panel .field select{
  width:100%;
  min-height:48px;
  padding:0 14px;
  border:1px solid var(--lh-line);
  border-radius:14px;
  outline:0;
  background:rgba(255,255,255,.75);
  color:var(--lh-text);
  font:inherit;
  font-size:12px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,transform .18s ease;
}
.login-help-body .login-help-panel .field textarea{
  min-height:118px;
  padding:13px 14px;
  line-height:1.6;
  resize:vertical;
}
.login-help-body .login-help-panel .field select{
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
  padding-right:40px;
}
.login-help-body .login-help-panel .field input::placeholder,
.login-help-body .login-help-panel .field textarea::placeholder{
  color:#a19a90;
}
.login-help-body .login-help-panel .field input:hover,
.login-help-body .login-help-panel .field textarea:hover,
.login-help-body .login-help-panel .field select:hover{
  border-color:var(--lh-line-strong);
  background:#fff;
}
.login-help-body .login-help-panel .field input:focus,
.login-help-body .login-help-panel .field textarea:focus,
.login-help-body .login-help-panel .field select:focus{
  border-color:#9caa9f;
  background:#fff;
  box-shadow:0 0 0 4px rgba(17,122,69,.09);
}
.login-help-body .login-help-select-wrap{
  position:relative;
}
.login-help-body .login-help-select-wrap::after{
  content:"";
  position:absolute;
  right:16px;
  top:50%;
  width:7px;
  height:7px;
  border-right:1.5px solid #756e65;
  border-bottom:1.5px solid #756e65;
  transform:translateY(-70%) rotate(45deg);
  pointer-events:none;
}
.login-help-body .field-error{
  margin-top:6px;
  color:var(--lh-danger);
  font-size:9.5px;
  line-height:1.4;
}
.login-help-body .login-help-form-footer{
  margin-top:20px;
  padding-top:18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border-top:1px solid rgba(173,159,141,.24);
}
.login-help-body .login-help-form-note{
  max-width:385px;
  display:flex;
  align-items:flex-start;
  gap:7px;
  color:var(--lh-muted);
  font-size:9.5px;
  line-height:1.5;
}
.login-help-body .login-help-form-note .ui-icon{
  flex:0 0 auto;
  margin-top:1px;
  color:#887e71;
}
.login-help-body .login-help-primary-button{
  min-width:132px;
  min-height:43px;
  padding:0 18px;
  border:1px solid var(--lh-green-strong);
  border-radius:999px;
  background:var(--lh-green-strong);
  color:#fff;
  font:inherit;
  font-size:11px;
  font-weight:760;
  letter-spacing:.005em;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(11,101,56,.14);
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,opacity .16s ease;
}
.login-help-body .login-help-primary-button:hover{
  transform:translateY(-1px);
  background:#095c33;
  box-shadow:0 11px 23px rgba(11,101,56,.19);
}
.login-help-body .login-help-primary-button:active{transform:translateY(0)}
.login-help-body .login-help-primary-button:focus-visible{
  outline:0;
  box-shadow:0 0 0 4px rgba(17,122,69,.15),0 8px 18px rgba(11,101,56,.14);
}
.login-help-body .login-help-primary-button:disabled{
  cursor:wait;
  opacity:.72;
  transform:none;
}
.login-help-body .login-status-card{
  margin-top:25px;
  padding-top:24px;
  border-top:1px solid rgba(173,159,141,.28);
}
.login-help-body .login-status-head{
  padding:17px 18px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  border:1px solid rgba(169,154,135,.30);
  border-radius:18px;
  background:rgba(240,234,223,.45);
}
.login-help-body .login-status-head small,
.login-help-body .login-status-head strong{display:block}
.login-help-body .login-status-head small{
  color:var(--lh-muted);
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.login-help-body .login-status-head strong{
  margin-top:4px;
  color:var(--lh-text);
  font:750 13px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
.login-help-body .login-status-badge{
  padding:7px 10px;
  border-radius:999px;
  background:#ece7df;
  color:#5a544c;
  font-size:9.5px;
  font-weight:800;
  white-space:nowrap;
}
.login-help-body .status-submitted,
.login-help-body .status-under_review{
  background:#e8eef9;
  color:#365c9c;
}
.login-help-body .status-waiting_student{
  background:#f8edcf;
  color:#865f13;
}
.login-help-body .status-resolved{
  background:var(--lh-green-soft);
  color:var(--lh-green-strong);
}
.login-help-body .status-closed{
  background:#ebe8e3;
  color:#5f5a53;
}
.login-help-body .login-status-summary{
  margin:11px 0 20px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.login-help-body .login-status-summary>div{
  padding:13px 14px;
  border:1px solid rgba(169,154,135,.28);
  border-radius:15px;
  background:rgba(255,255,255,.45);
}
.login-help-body .login-status-summary span,
.login-help-body .login-status-summary strong{display:block}
.login-help-body .login-status-summary span{
  color:var(--lh-muted);
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.055em;
}
.login-help-body .login-status-summary strong{
  margin-top:5px;
  color:var(--lh-text);
  font-size:11.5px;
}
.login-help-body .login-status-section-title{
  display:flex;
  align-items:center;
  gap:7px;
  color:#4c463f;
}
.login-help-body .login-status-section-title>span{
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--lh-surface-2);
  color:#6e665c;
}
.login-help-body .login-status-section-title h2{
  margin:0;
  font-size:11px;
  font-weight:780;
}
.login-help-body .login-status-messages{
  margin-top:19px;
}
.login-help-body .login-status-message{
  margin-top:9px;
  padding:15px 16px;
  border:1px solid rgba(126,158,137,.25);
  border-radius:17px;
  background:#edf4ef;
}
.login-help-body .login-status-message-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.login-help-body .login-status-message-meta strong{
  color:#355d43;
  font-size:10.5px;
}
.login-help-body .login-status-message-meta small{
  color:#6f8175;
  font-size:8.8px;
}
.login-help-body .login-status-message p{
  margin:8px 0 0;
  color:#34423a;
  font-size:11.5px;
  line-height:1.68;
}
.login-help-body .login-status-pending{
  margin-top:18px;
  padding:14px 15px;
  display:flex;
  align-items:flex-start;
  gap:10px;
  border:1px solid rgba(169,154,135,.28);
  border-radius:16px;
  background:rgba(239,233,223,.48);
  color:#5f5951;
}
.login-help-body .login-status-pending>span{
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  background:rgba(255,255,255,.62);
}
.login-help-body .login-status-pending strong{
  font-size:10.5px;
}
.login-help-body .login-status-pending p{
  margin:3px 0 0;
  color:var(--lh-muted);
  font-size:9.5px;
  line-height:1.5;
}
.login-help-body .login-status-timeline{
  margin-top:20px;
}
.login-help-body .login-status-timeline-list{
  margin:12px 0 0 13px;
  padding-left:18px;
  border-left:1px solid #d8cfc2;
}
.login-help-body .login-status-timeline-item{
  position:relative;
  margin:0 0 14px;
}
.login-help-body .login-status-dot{
  position:absolute;
  left:-22px;
  top:5px;
  width:7px;
  height:7px;
  border:2px solid var(--lh-surface);
  border-radius:50%;
  background:var(--lh-green);
  box-shadow:0 0 0 1px rgba(17,122,69,.25);
}
.login-help-body .login-status-timeline-item p{margin:0}
.login-help-body .login-status-timeline-item strong{
  display:block;
  color:#4e4942;
  font-size:10px;
}
.login-help-body .login-status-timeline-item small{
  display:block;
  margin-top:2px;
  color:var(--lh-muted);
  font-size:8.8px;
  line-height:1.45;
}
.login-help-body .login-help-footer{
  margin:25px 0 0;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:7px;
  color:#8b8378;
  font-size:9.5px;
}
.login-help-body .login-help-footer a{
  color:#6f685f;
  text-decoration:none;
}
.login-help-body .login-help-footer a:hover{text-decoration:underline}
.login-help-body .hp-field{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}

/* Success state */
.login-help-body .login-help-success-shell{
  width:min(100% - 32px,660px);
  margin:0 auto;
  padding:70px 0;
}
.login-help-body .login-help-success{
  width:100%;
  margin:0;
  padding:38px;
  border:1px solid rgba(169,154,135,.35);
  border-radius:28px;
  background:rgba(255,253,248,.92);
  text-align:center;
  box-shadow:var(--lh-shadow);
}
.login-help-body .success-mark{
  width:54px;
  height:54px;
  margin:0 auto 16px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--lh-green-soft);
  color:var(--lh-green-strong);
  box-shadow:inset 0 0 0 1px rgba(17,122,69,.08);
}
.login-help-body .login-help-success h1{
  margin:7px 0 9px;
  color:var(--lh-text);
  font-size:30px;
  line-height:1.1;
  letter-spacing:-.035em;
}
.login-help-body .login-help-success>p{
  max-width:510px;
  margin:0 auto 24px;
  color:var(--lh-muted);
  font-size:12px;
  line-height:1.68;
}
.login-help-body .reference-card{
  padding:14px 15px 14px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid rgba(169,154,135,.33);
  border-radius:18px;
  background:rgba(239,233,223,.48);
  text-align:left;
}
.login-help-body .reference-card small,
.login-help-body .reference-card strong{display:block}
.login-help-body .reference-card small{
  color:var(--lh-muted);
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.login-help-body .reference-card strong{
  margin-top:4px;
  color:var(--lh-text);
  font:760 15px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  overflow-wrap:anywhere;
}
.login-help-body .reference-card button{
  min-height:36px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
  border:1px solid var(--lh-line);
  border-radius:999px;
  background:var(--lh-surface);
  color:#5e574f;
  font:inherit;
  font-size:9.5px;
  font-weight:720;
  cursor:pointer;
  box-shadow:var(--lh-shadow-sm);
  transition:transform .16s ease,border-color .16s ease;
}
.login-help-body .reference-card button:hover{
  transform:translateY(-1px);
  border-color:var(--lh-line-strong);
}
.login-help-body .success-note{
  margin-top:13px;
  padding:14px 15px;
  display:flex;
  align-items:flex-start;
  gap:10px;
  border:1px solid rgba(189,165,111,.26);
  border-radius:17px;
  background:#f8f1df;
  color:#65583d;
  text-align:left;
}
.login-help-body .success-note>span{
  width:29px;
  height:29px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  background:rgba(255,255,255,.54);
}
.login-help-body .success-note strong{font-size:10.5px}
.login-help-body .success-note p{
  margin:3px 0 0;
  color:#746649;
  font-size:9.5px;
  line-height:1.55;
}
.login-help-body .success-actions{
  margin-top:23px;
  display:flex;
  justify-content:center;
  gap:8px;
}
.login-help-body .success-actions a{
  min-height:42px;
  padding:0 15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  border:1px solid var(--lh-line);
  border-radius:999px;
  background:var(--lh-surface);
  color:var(--lh-text);
  text-decoration:none;
  font-size:10.5px;
  font-weight:720;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.login-help-body .success-actions a:hover{
  transform:translateY(-1px);
  border-color:var(--lh-line-strong);
  box-shadow:var(--lh-shadow-sm);
}
.login-help-body .success-actions a.success-primary{
  border-color:var(--lh-green-strong);
  background:var(--lh-green-strong);
  color:#fff;
}

@media(max-width:640px){
  .login-help-body .login-help-header{height:66px;padding-inline:14px}
  .login-help-body .login-help-brand img{width:30px;height:40px}
  .login-help-body .login-help-brand strong{font-size:11.5px}
  .login-help-body .login-help-brand small{font-size:9px}
  .login-help-body .login-help-back{padding:0 8px;font-size:10px}
  .login-help-body .login-help-shell{width:min(100% - 22px,720px);padding:38px 0 30px}
  .login-help-body .login-help-hero{margin-bottom:22px}
  .login-help-body .login-help-hero h1{font-size:33px}
  .login-help-body .login-help-hero>p{font-size:12px}
  .login-help-body .login-help-assurance{font-size:9.5px;gap:7px 12px}
  .login-help-body .login-help-switch{width:100%}
  .login-help-body .login-help-switch button{height:40px;padding-inline:10px;font-size:10.5px}
  .login-help-body .login-help-panel{padding:21px;border-radius:22px}
  .login-help-body .login-help-panel-head h2{font-size:19px}
  .login-help-body .login-help-grid,
  .login-help-body .login-status-summary{grid-template-columns:1fr}
  .login-help-body .login-help-contact-group{padding:14px 14px 2px}
  .login-help-body .login-help-section-label{align-items:flex-start}
  .login-help-body .login-help-form-footer{align-items:stretch;flex-direction:column}
  .login-help-body .login-help-form-note{max-width:none}
  .login-help-body .login-help-primary-button{width:100%}
  .login-help-body .login-status-head{align-items:flex-start;flex-direction:column}
  .login-help-body .login-status-message-meta{align-items:flex-start;flex-direction:column;gap:2px}
  .login-help-body .login-help-footer{flex-wrap:wrap}
  .login-help-body .login-help-success-shell{width:min(100% - 22px,660px);padding:40px 0}
  .login-help-body .login-help-success{padding:25px 20px;border-radius:23px}
  .login-help-body .login-help-success h1{font-size:26px}
  .login-help-body .reference-card{align-items:stretch;flex-direction:column}
  .login-help-body .reference-card button{align-self:flex-start}
  .login-help-body .success-actions{flex-direction:column}
  .login-help-body .success-actions a{width:100%}
}

@media(prefers-reduced-motion:reduce){
  .login-help-body .login-help-panel{animation:none}
  .login-help-body .login-help-switch button,
  .login-help-body .login-help-primary-button,
  .login-help-body .login-help-back,
  .login-help-body .reference-card button,
  .login-help-body .success-actions a{transition:none}
}

/* ======================================================================
   Production auth polish — Anthropic-inspired restraint, HU identity.
   Structure/interaction stays minimal and editorial; color identity is
   exclusively Hormuud University green/blue with neutral white surfaces.
   ====================================================================== */
:root{
  --hu-green:#16a55a;
  --hu-green-dark:#0b7f45;
  --hu-green-deep:#075f35;
  --hu-green-soft:#eaf7ef;
  --hu-blue:#2aa7dc;
  --hu-blue-dark:#1a84b8;
  --hu-blue-soft:#eaf7fc;
  --hu-ink:#17211c;
  --hu-muted:#66716b;
  --hu-line:#d9e4de;
  --hu-line-strong:#bccdc3;
  --hu-page:#f6faf8;
  --hu-surface:#ffffff;
  --hu-shadow:0 18px 54px rgba(16,70,43,.08);
}

/* Student login */
.student-login-body{
  min-height:100vh;
  background:
    radial-gradient(circle at 9% 0%, rgba(42,167,220,.09), transparent 31rem),
    radial-gradient(circle at 92% 7%, rgba(22,165,90,.10), transparent 32rem),
    var(--hu-page);
  color:var(--hu-ink);
}
.student-login-page{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
.student-login-header{
  min-height:76px;
  padding:13px clamp(18px,4vw,56px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border-bottom:1px solid rgba(188,205,195,.58);
  background:rgba(246,250,248,.82);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.student-login-brand{
  display:inline-flex;
  align-items:center;
  gap:11px;
  color:var(--hu-ink);
  text-decoration:none;
}
.student-login-brand img{
  width:35px;
  height:47px;
  object-fit:contain;
}
.student-login-brand span,
.student-login-brand strong,
.student-login-brand small{display:block}
.student-login-brand strong{
  font-size:13px;
  line-height:1.2;
  letter-spacing:-.012em;
}
.student-login-brand small{
  margin-top:3px;
  color:var(--hu-muted);
  font-size:10px;
}
.student-login-support-link{
  min-height:38px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  border:1px solid transparent;
  border-radius:999px;
  color:#4e6157;
  text-decoration:none;
  font-size:11.5px;
  font-weight:700;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
.student-login-support-link:hover{
  border-color:var(--hu-line);
  background:rgba(255,255,255,.8);
  color:var(--hu-green-dark);
  transform:translateY(-1px);
}
.student-login-shell{
  width:min(100% - 32px,510px);
  margin:auto;
  padding:60px 0 44px;
}
.student-login-intro{
  margin-bottom:30px;
  text-align:center;
}
.student-login-logo-wrap{
  width:78px;
  height:88px;
  margin:0 auto 19px;
  display:grid;
  place-items:center;
  border:1px solid rgba(188,205,195,.68);
  border-radius:24px;
  background:rgba(255,255,255,.84);
  box-shadow:0 10px 30px rgba(16,70,43,.06);
}
.student-login-logo-wrap img{
  width:54px;
  height:70px;
  object-fit:contain;
}
.student-login-kicker{
  margin:0;
  color:var(--hu-green-dark);
  font-size:10.5px;
  font-weight:820;
  letter-spacing:.105em;
  text-transform:uppercase;
}
.student-login-intro h1{
  margin:9px 0 9px;
  color:var(--hu-ink);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(38px,7vw,53px);
  line-height:1;
  font-weight:500;
  letter-spacing:-.045em;
}
.student-login-subtitle{
  max-width:430px;
  margin:0 auto;
  color:var(--hu-muted);
  font-size:13px;
  line-height:1.65;
}
.student-login-form-wrap{
  padding:28px;
  border:1px solid rgba(188,205,195,.72);
  border-radius:24px;
  background:rgba(255,255,255,.92);
  box-shadow:var(--hu-shadow);
}
.student-login-alert{
  margin-bottom:18px;
  border:1px solid #efc9c3;
  border-radius:13px;
  background:#fff4f2;
  color:#8f3027;
  line-height:1.5;
}
.student-login-field{
  margin:0 0 17px;
}
.student-login-field label{
  margin:0 0 7px;
  color:#314139;
  font-size:11px;
  font-weight:760;
}
.student-login-field input{
  width:100%;
  height:50px;
  padding:0 14px;
  border:1px solid var(--hu-line-strong);
  border-radius:13px;
  outline:0;
  background:#fff;
  color:var(--hu-ink);
  font-size:12.5px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.student-login-field input::placeholder{color:#9ba7a0}
.student-login-field input:hover{border-color:#9fb9aa}
.student-login-field input:focus{
  border-color:var(--hu-green);
  box-shadow:0 0 0 4px rgba(22,165,90,.11);
}
.student-login-password-wrap{position:relative}
.student-login-password-wrap input{padding-right:66px}
.student-login-password-toggle{
  position:absolute;
  right:8px;
  top:50%;
  min-width:49px;
  height:34px;
  transform:translateY(-50%);
  border:0;
  border-radius:9px;
  background:transparent;
  color:#54675d;
  font-size:10.5px;
  font-weight:760;
  cursor:pointer;
  transition:background .16s ease,color .16s ease;
}
.student-login-password-toggle:hover,
.student-login-password-toggle:focus-visible{
  outline:0;
  background:var(--hu-green-soft);
  color:var(--hu-green-dark);
}
.student-login-options{
  margin:3px 0 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  color:var(--hu-muted);
  font-size:10.5px;
}
.student-login-check{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#415249;
  cursor:pointer;
}
.student-login-check input{
  width:15px;
  height:15px;
  margin:0;
  accent-color:var(--hu-green);
}
.student-login-secure{white-space:nowrap}
.student-login-submit{
  width:100%;
  min-height:48px;
  border:1px solid var(--hu-green-dark);
  border-radius:999px;
  background:var(--hu-green-dark);
  color:#fff;
  font:inherit;
  font-size:11.5px;
  font-weight:790;
  letter-spacing:.01em;
  cursor:pointer;
  box-shadow:0 9px 22px rgba(11,127,69,.17);
  transition:transform .16s ease,background .16s ease,box-shadow .16s ease,opacity .16s ease;
}
.student-login-submit:hover{
  background:var(--hu-green-deep);
  transform:translateY(-1px);
  box-shadow:0 12px 27px rgba(11,127,69,.22);
}
.student-login-submit:focus-visible{
  outline:0;
  box-shadow:0 0 0 4px rgba(22,165,90,.14),0 9px 22px rgba(11,127,69,.17);
}
.student-login-submit:disabled{cursor:wait;opacity:.72;transform:none}
.student-login-help-card{
  margin-top:22px;
  padding:15px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:4px 11px;
  border:1px solid #d7e9df;
  border-radius:17px;
  background:linear-gradient(135deg,rgba(234,247,239,.9),rgba(234,247,252,.62));
}
.student-login-help-icon{
  grid-row:1 / span 2;
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:var(--hu-green-dark);
}
.student-login-help-card strong{
  color:#2e4538;
  font-size:10.8px;
}
.student-login-help-card p{
  margin:3px 0 0;
  color:#66776e;
  font-size:9.8px;
  line-height:1.5;
}
.student-login-help-card a{
  grid-column:2;
  margin-top:5px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  width:max-content;
  color:var(--hu-green-dark);
  text-decoration:none;
  font-size:10.5px;
  font-weight:780;
}
.student-login-help-card a:hover{text-decoration:underline}
.student-login-footer{
  padding:0 18px 23px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:7px;
  color:#87948d;
  font-size:9.5px;
}

/* Login Help: keep the editorial layout, replace Anthropic beige/brown with HU. */
.login-help-body{
  --lh-bg:#f6faf8;
  --lh-surface:#ffffff;
  --lh-surface-2:#edf7f1;
  --lh-surface-3:#e5f1eb;
  --lh-text:#17211c;
  --lh-muted:#66736c;
  --lh-line:#d8e4dd;
  --lh-line-strong:#bdcec4;
  --lh-green:var(--hu-green);
  --lh-green-strong:var(--hu-green-dark);
  --lh-green-soft:var(--hu-green-soft);
  --lh-blue:var(--hu-blue);
  --lh-danger:#a53c33;
  --lh-danger-soft:#fff1ef;
  --lh-shadow:0 18px 55px rgba(16,70,43,.075);
  --lh-shadow-sm:0 8px 24px rgba(16,70,43,.055);
  background:
    radial-gradient(circle at 13% -8%, rgba(42,167,220,.11), transparent 34rem),
    radial-gradient(circle at 90% 4%, rgba(22,165,90,.08), transparent 30rem),
    var(--lh-bg);
}
.login-help-body .login-help-header{
  border-bottom-color:rgba(188,205,195,.58);
  background:rgba(246,250,248,.84);
}
.login-help-body .login-help-back{color:#5d7065}
.login-help-body .login-help-back:hover{background:#fff;color:var(--lh-green-strong)}
.login-help-body .login-help-hero h1,
.login-help-body .login-help-success h1{
  font-family:Georgia,"Times New Roman",serif;
  font-weight:500;
}
.login-help-body .login-help-assurance{color:#5d7065}
.login-help-body .login-help-switch{
  border-color:#cfe0d6;
  background:#eaf3ee;
}
.login-help-body .login-help-switch button{color:#587066}
.login-help-body .login-help-switch button.active{
  background:#fff;
  color:var(--lh-green-strong);
  box-shadow:0 4px 13px rgba(16,70,43,.075);
}
.login-help-body .login-help-panel{
  border-color:#d4e2da;
  background:rgba(255,255,255,.94);
}
.login-help-body .login-help-panel-head>div>span,
.login-help-body .login-help-kicker{color:var(--lh-green-strong)}
.login-help-body .login-help-contact-group{
  border-color:#d8e7df;
  background:rgba(237,247,241,.68);
}
.login-help-body .login-help-section-label span{color:#40564a}
.login-help-body .login-help-section-label small{
  background:#fff;
  color:#687970;
}
.login-help-body .login-help-panel .field label{color:#354a3f}
.login-help-body .login-help-panel .field input,
.login-help-body .login-help-panel .field textarea,
.login-help-body .login-help-panel .field select{
  border-color:var(--lh-line);
  background:#fff;
  color:var(--lh-text);
}
.login-help-body .login-help-panel .field input::placeholder,
.login-help-body .login-help-panel .field textarea::placeholder{color:#98a69f}
.login-help-body .login-help-panel .field input:hover,
.login-help-body .login-help-panel .field textarea:hover,
.login-help-body .login-help-panel .field select:hover{border-color:#aac2b4}
.login-help-body .login-help-panel .field input:focus,
.login-help-body .login-help-panel .field textarea:focus,
.login-help-body .login-help-panel .field select:focus{
  border-color:var(--lh-green);
  box-shadow:0 0 0 4px rgba(22,165,90,.11);
}
.login-help-body .login-help-form-footer{border-top-color:#dce8e1}
.login-help-body .login-help-form-note .ui-icon{color:var(--lh-green-dark)}
.login-help-body .login-help-primary-button{
  border-color:var(--lh-green-strong);
  background:var(--lh-green-strong);
  box-shadow:0 8px 18px rgba(11,127,69,.15);
}
.login-help-body .login-help-primary-button:hover{
  background:var(--hu-green-deep);
  box-shadow:0 11px 23px rgba(11,127,69,.2);
}
.login-help-body .login-status-head,
.login-help-body .login-status-summary>div,
.login-help-body .login-status-pending,
.login-help-body .reference-card{
  border-color:#d8e5de;
  background:#f7fbf9;
}
.login-help-body .login-status-message{
  border-color:#cae3d4;
  background:#eef8f2;
}
.login-help-body .login-status-timeline-list{border-left-color:#cfe0d6}
.login-help-body .login-help-footer{color:#7c8b83}
.login-help-body .login-help-footer a{color:#52675c}
.login-help-body .success-note{
  border-color:#cfe4d7;
  background:#eff8f3;
  color:#415d4c;
}
.login-help-body .success-note p{color:#5e7367}

/* Custom issue selector. Native select remains as no-JS fallback and is only
   visually removed after JavaScript has successfully built the listbox. */
.login-help-body .login-help-select-wrap{position:relative}
.login-help-body .login-help-select-wrap.custom-select-ready > .login-help-native-select{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
}
.login-help-body .login-help-select-wrap.custom-select-ready::after{display:none}
.login-help-body .login-help-select-trigger{
  width:100%;
  min-height:50px;
  padding:0 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid var(--lh-line);
  border-radius:14px;
  background:#fff;
  color:var(--lh-text);
  font:inherit;
  font-size:12px;
  text-align:left;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.login-help-body .login-help-select-trigger:hover{border-color:#aac2b4}
.login-help-body .login-help-select-trigger:focus-visible,
.login-help-body .login-help-select-wrap.open .login-help-select-trigger{
  outline:0;
  border-color:var(--lh-green);
  box-shadow:0 0 0 4px rgba(22,165,90,.11);
}
.login-help-body .login-help-select-value{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.login-help-body .login-help-select-chevron{
  width:8px;
  height:8px;
  flex:0 0 auto;
  border-right:1.5px solid #577065;
  border-bottom:1.5px solid #577065;
  transform:translateY(-2px) rotate(45deg);
  transition:transform .18s ease;
}
.login-help-body .login-help-select-wrap.open .login-help-select-chevron{
  transform:translateY(2px) rotate(225deg);
}
.login-help-body .login-help-select-menu{
  position:absolute;
  z-index:40;
  top:calc(100% + 8px);
  left:0;
  right:0;
  max-height:280px;
  padding:6px;
  overflow:auto;
  border:1px solid #d2e1d8;
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 38px rgba(16,70,43,.14);
}
.login-help-body .login-help-select-menu[hidden]{display:none}
.login-help-body .login-help-select-option{
  width:100%;
  min-height:42px;
  padding:9px 11px;
  display:flex;
  align-items:center;
  border:0;
  border-radius:11px;
  background:transparent;
  color:#3b5045;
  font:inherit;
  font-size:11.5px;
  text-align:left;
  cursor:pointer;
  transition:background .14s ease,color .14s ease;
}
.login-help-body .login-help-select-option:hover,
.login-help-body .login-help-select-option:focus-visible{
  outline:0;
  background:var(--lh-green-soft);
  color:var(--lh-green-strong);
}
.login-help-body .login-help-select-option.selected{
  position:relative;
  padding-right:34px;
  background:#f0f8f4;
  color:var(--lh-green-strong);
  font-weight:760;
}
.login-help-body .login-help-select-option.selected::after{
  content:"";
  position:absolute;
  right:14px;
  top:50%;
  width:8px;
  height:4px;
  border-left:2px solid var(--lh-green);
  border-bottom:2px solid var(--lh-green);
  transform:translateY(-65%) rotate(-45deg);
}

@media(max-width:640px){
  .student-login-header{min-height:68px;padding-inline:14px}
  .student-login-brand img{width:31px;height:42px}
  .student-login-brand strong{font-size:11.5px}
  .student-login-brand small{font-size:9px}
  .student-login-support-link{padding:0 8px;font-size:10px}
  .student-login-shell{width:min(100% - 22px,510px);padding:38px 0 30px}
  .student-login-logo-wrap{width:70px;height:80px;border-radius:21px}
  .student-login-logo-wrap img{width:49px;height:63px}
  .student-login-intro h1{font-size:42px}
  .student-login-subtitle{font-size:12px}
  .student-login-form-wrap{padding:21px 18px;border-radius:21px}
  .student-login-options{align-items:flex-start;flex-direction:column;gap:9px}
  .student-login-secure{white-space:normal}
  .student-login-help-card{grid-template-columns:auto 1fr}
  .student-login-footer{flex-wrap:wrap}
  .login-help-body .login-help-select-menu{max-height:240px}
}

@media(prefers-reduced-motion:reduce){
  .student-login-support-link,
  .student-login-field input,
  .student-login-password-toggle,
  .student-login-submit,
  .login-help-body .login-help-select-trigger,
  .login-help-body .login-help-select-chevron,
  .login-help-body .login-help-select-option{transition:none}
}
