/* Desktop uses the same visual language as the existing mobile login. */
.login-desktop-brand,.login-school-photo,.login-photo-caption,.login-school-art{display:none}
@media(min-width:901px){
 .login-page .login-shell{padding:24px;background:radial-gradient(ellipse at 15% 95%,#f1d8de,transparent 55%),#f7f3f3;isolation:isolate}
 .login-page .login-shell::before,.login-page .login-shell::after{display:none}
 .login-page .login-shell::before{content:"";display:block;position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('../img/login-desktop-backdrop.svg') center/cover no-repeat;backdrop-filter:none}
 .login-page .login-frame{position:relative;display:block;isolation:isolate;width:500px;max-width:100%;min-height:0;padding:0 24px 24px;border:0;border-radius:32px;background:transparent;box-shadow:none;overflow:hidden}
 .login-page .login-frame::before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:340px;border-radius:32px 32px 45% 45% / 32px 32px 12% 12%;background:url('../img/login-school-pattern.svg') center top/280px 260px repeat,linear-gradient(145deg,#c71b36,#a20f29 65%,#790d24)}
 .login-page .login-showcase,.login-page .login-card__top,.login-page .login-desktop-brand{display:none}
 .login-page .login-mobile-brand{display:flex;flex-direction:column;align-items:center;direction:rtl;gap:3px;padding:22px 12px 19px;text-align:center;color:#fff}
 .login-page .login-mobile-brand img{display:block;width:64px;height:64px;object-fit:contain;filter:brightness(0) invert(1);margin-bottom:4px}
 .login-page .login-mobile-brand strong{color:#fff;font-size:1rem;line-height:1.65;font-weight:800}
 .login-page .login-mobile-brand span{font-size:.7rem;color:#ffe2e8}
 .login-page .login-card{position:relative;display:block;width:100%;min-height:0;padding:25px 30px 22px;border:1px solid #fff;border-radius:28px;background:#fff;box-shadow:0 24px 60px #64122122,0 3px 12px #6412210c}
 .login-page .login-heading{text-align:center}
 .login-page .login-kicker{color:#a20f29;font-size:.72rem;margin-bottom:4px}
 .login-page .login-heading h1{color:#34272c;font-size:1.45rem;line-height:1.55;margin:0 0 6px}
 .login-page .login-subtitle{color:#867980;font-size:.76rem;line-height:1.85}
 .login-page .login-card .form-stack{margin-top:20px;gap:8px}
 .login-page .login-card .form-stack label{color:#51444a;font-size:.8rem}
 .login-page .login-card .form-stack input:not([type=hidden]){min-height:50px;font-size:16px;background:#fcfafb;border:1px solid #e8dfe2;border-radius:13px}
 .login-page .login-card :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-page .field-glyph{color:#b49ca5}
 .login-page .login-card .password-toggle{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;color:#9c2a40!important}
 .login-page .login-card .primary-button{min-height:50px;margin-top:12px;border:0;border-radius:99px!important;background:linear-gradient(110deg,#c51835,#99112b)!important;box-shadow:0 8px 20px #b4143029;font-size:.95rem}
 .login-page .login-card .registration-note{margin-top:16px;padding:10px 12px;background:#faf6f7;color:#8a747d;font-size:.68rem;border-radius:12px}
 .login-page .login-card__trust{gap:7px;margin-top:15px;font-size:.6rem;color:#a5929a}
 .login-page .login-card .alert{background:#fff2f4;color:#9e1530;overflow-wrap:anywhere}
}
@media(min-width:901px) and (max-height:780px){
 .login-page .login-shell{padding-block:16px}
 .login-page .login-frame{padding-bottom:14px}
 .login-page .login-mobile-brand{padding-block:14px 15px;gap:2px}
 .login-page .login-mobile-brand img{width:48px;height:48px;margin-bottom:2px}
 .login-page .login-mobile-brand strong{font-size:.92rem;line-height:1.55}
 .login-page .login-mobile-brand strong br{display:none}
 .login-page .login-mobile-brand span{font-size:.65rem}
 .login-page .login-card{padding:20px 28px 17px}
 .login-page .login-kicker{display:none}
 .login-page .login-heading h1{font-size:1.35rem;margin-bottom:3px}
 .login-page .login-card .form-stack{margin-top:14px;gap:6px}
 .login-page .login-card .form-stack input:not([type=hidden]){min-height:46px;padding-block:9px}
 .login-page .login-card .primary-button{min-height:46px;margin-top:9px;padding-block:10px}
 .login-page .login-card .login-password-help{min-height:38px;margin-top:10px;padding-block:8px}
 .login-page .login-card .registration-note{margin-top:12px;padding:9px 11px}
 .login-page .login-card__trust{margin-top:12px}
}
