.login-mobile-brand{display:none}
.login-card .login-password-help{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:14px;padding:10px 14px;border:1px solid #e5b8c2;border-radius:12px;background:#fff8fa;color:#a20f29;text-decoration:none;font-size:.82rem;font-weight:700}
.login-card .login-password-help:hover{background:#fff0f3;border-color:#bd1730}
.login-retry{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;padding:12px 14px;border-radius:12px;background:#fff2f4;color:#9e1530;font-size:.8rem}
.login-retry[hidden]{display:none}
#login-retry-time{font-size:1.25rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:1px}
.login-card .primary-button:disabled{opacity:.6;cursor:wait;transform:none}
@media(max-width:600px){
 .login-mobile-shell{display:block;min-height:100vh;min-height:100dvh;padding:0;background:#f7f3f3;isolation:isolate}
 .login-mobile-shell::before,.login-mobile-shell::after{display:none}
 .login-mobile-shell .login-frame{position:relative;display:block;width:100%;max-width:none;min-height:100dvh;padding:0 max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));overflow:hidden;border:0;border-radius:0;background:transparent;box-shadow:none;isolation:isolate}
 .login-mobile-shell .login-frame::before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:390px;background:url('../img/login-school-pattern.svg') center top/280px 260px repeat,linear-gradient(145deg,#c71b36,#a20f29 65%,#790d24);border-radius:0 0 45% 45% / 0 0 9% 9%}
 .login-mobile-shell .login-showcase,.login-mobile-shell .login-card__top{display:none}
 .login-mobile-brand{display:flex;direction:rtl;flex-direction:column;align-items:center;gap:5px;padding:calc(23px + env(safe-area-inset-top)) 12px 22px;text-align:center;color:#fff}
 .login-mobile-brand img{display:block;width:78px;height:78px;object-fit:contain;filter:brightness(0) invert(1);margin-bottom:5px}
 .login-mobile-brand strong{font-size:1.04rem;font-weight:800;line-height:1.65;color:#fff}
 .login-mobile-brand span{font-size:.72rem;color:#ffe2e8}
 .login-mobile-shell .login-card{position:relative;display:block;width:min(440px,100%);min-height:0;margin:0 auto;padding:27px 23px 22px;border:1px solid #fff;border-radius:30px;background:#fff;box-shadow:0 18px 42px #6412211a,0 2px 8px #64122109}
 .login-mobile-shell .login-heading{text-align:center}
 .login-mobile-shell .login-kicker{font-size:.72rem;color:#a20f29;margin-bottom:4px}
 .login-mobile-shell .login-heading h1{font-size:1.38rem;line-height:1.55;color:#34272c;margin:0 0 6px}
 .login-mobile-shell .login-subtitle{font-size:.75rem;line-height:1.85;color:#867980}
 .login-mobile-shell .form-stack{margin-top:23px;gap:9px}
 .login-mobile-shell .form-stack label{font-size:.79rem;color:#51444a}
 .login-mobile-shell .form-stack input:not([type=hidden]){min-height:52px;font-size:16px;border:1px solid #e8dfe2;border-radius:13px;background:#fcfafb}
 .login-mobile-shell .form-stack input:focus{border-color:#b31631;background:#fff;box-shadow:0 0 0 3px #bd173017}
 .login-mobile-shell :is(input:focus,button:focus-visible,a:focus-visible){outline:2px solid #bd173055!important;outline-offset:2px!important;border-color:#b31631!important;box-shadow:0 0 0 3px #bd173017!important}
 .login-mobile-shell .login-label-row{gap:8px;flex-wrap:wrap;margin-top:7px}
 .login-mobile-shell .login-label-row a{min-height:28px;display:inline-flex;align-items:center;font-size:.7rem;color:#a20f29}
 .login-mobile-shell .field-glyph{color:#b49ca5}
 .login-mobile-shell .password-toggle{min-height:0;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;color:#9c2a40!important}
 .login-mobile-shell .primary-button{min-height:52px;margin-top:14px;border:0;border-radius:99px!important;background:linear-gradient(110deg,#c51835,#99112b)!important;box-shadow:0 8px 20px #b4143029;font-size:.95rem}
 .login-mobile-shell .registration-note{margin-top:21px;padding:11px 12px;background:#faf6f7;color:#8a747d;font-size:.68rem;border-radius:12px}
 .login-mobile-shell .login-card__trust{gap:7px;margin-top:18px;font-size:.6rem;color:#a5929a}
 .login-mobile-shell .alert{margin-top:16px;background:#fff2f4;color:#9e1530;overflow-wrap:anywhere}
 .login-mobile-shell .alert strong{font-size:.8rem}
 .login-mobile-shell .alert span{font-size:.73rem}
}
@media(max-width:350px){
 .login-mobile-shell .login-frame{padding-inline:14px}
 .login-mobile-shell .login-card{padding-inline:17px;border-radius:25px}
 .login-mobile-shell .login-heading h1{font-size:1.22rem}
}
@media(max-width:600px) and (max-height:600px){
 .login-mobile-brand{padding-top:14px;padding-bottom:15px;gap:2px}
 .login-mobile-brand img{width:48px;height:48px}
 .login-mobile-brand strong{font-size:.88rem}
 .login-mobile-brand strong br{display:none}
 .login-mobile-brand span{display:none}
}
