/* V25 institutional login page; application forms outside loginScreen unchanged. */
#loginScreen{min-height:100vh;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;padding:0;background:#f5f8fb;color:#173550;isolation:isolate}
#loginScreen .v25-campus-header{position:relative;min-height:305px;padding:15px 18px 13px;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;text-align:center}
#loginScreen .v25-campus-pics{position:absolute;inset:0;z-index:-2;display:flex}
#loginScreen .v25-campus-pics .pic{width:50%;background-size:cover;background-repeat:no-repeat;background-position:center}
#loginScreen .v25-campus-pics .pic-left{background-image:url('assets/campus-building.webp')}
#loginScreen .v25-campus-pics .pic-right{background-image:url('assets/campus-wide.webp')}
#loginScreen .v25-campus-header:before{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,transparent 0%,#f7faff80 28%,#fffffff0 43%,#fffffff3 58%,#f7faff80 75%,transparent 100%),linear-gradient(0deg,#f5f8fb 0%,transparent 40%)}
#loginScreen .v25-emblem{width:121px;height:124px;object-fit:contain;filter:drop-shadow(0 1px 5px #fff);margin:0 0 4px}
#loginScreen .v25-college-name{font:700 clamp(19px,2vw,29px) Georgia,serif;line-height:1.22;text-wrap:balance;margin:0 0 12px;color:#12375d;text-shadow:0 1px 2px #fff}
#loginScreen .v25-programme-title{font:700 clamp(28px,3vw,44px) Georgia,serif;margin:0 0 5px;color:#10375f;letter-spacing:-.02em;text-shadow:0 1px 2px #fff}
#loginScreen .v25-programme-subtitle{font-size:clamp(13px,1.1vw,17px);color:#4e6882;margin:0}
#loginScreen .v25-login-layout{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(310px,.95fr);gap:23px;width:100%;max-width:1450px;margin:0 auto;flex:1;padding:0 22px 20px}
#loginScreen .v25-info-panel,#loginScreen .v25-login-panel{background:#fffc;border:1px solid #dce6f1;border-radius:15px;box-shadow:0 5px 24px #143d5e12;padding:24px 30px;min-width:0}
#loginScreen .v25-info-panel{display:flex;flex-direction:column;gap:12px}
#loginScreen .v25-info-heading{font:700 clamp(19px,1.7vw,25px) Georgia,serif;color:#13385e;margin:0 0 5px;border-bottom:2px solid #3f88bc;padding-bottom:12px}
#loginScreen .v25-feature{display:flex;align-items:center;gap:20px;padding:15px;border-radius:12px;border:1px solid #deebf5;flex:1;background:#f3f9ff}
#loginScreen .v25-feature.f-green{background:#f3faf7;border-color:#dceee5}
#loginScreen .v25-feature.f-sand{background:#fffbf4;border-color:#f3e8d7}
#loginScreen .v25-feature-icon{width:65px;height:65px;flex:none;display:grid;place-items:center;border-radius:50%;background:#dfedfc;color:#124f81;font-size:30px}
#loginScreen .f-green .v25-feature-icon{background:#dcf4e9;color:#176a52}
#loginScreen .f-sand .v25-feature-icon{background:#faefd9;color:#80622d}
#loginScreen .v25-feature h3{font:700 clamp(17px,1.44vw,21px) Georgia,serif;color:#123759;margin:0 0 4px;padding:0;border:0}
#loginScreen .v25-feature p{font-size:clamp(13px,1.07vw,15.4px);color:#516b84;line-height:1.45;margin:0}
#loginScreen .v25-feature-note{font-size:12px;color:#667f97;margin:4px 0 0;border-top:1px solid #e5edf3;padding-top:12px}
#loginScreen .v25-login-title{display:flex;align-items:center;gap:14px;margin-bottom:18px}
#loginScreen .v25-login-lock{width:60px;height:60px;flex:none;display:grid;place-items:center;background:#e7f2ff;border-radius:50%;color:#114775;font-size:27px}
#loginScreen .v25-login-title h2{font:700 clamp(23px,2.1vw,31px) Georgia,serif;color:#0f375d;margin:0 0 3px}
#loginScreen .v25-login-title p{font-size:13px;color:#637d94;margin:0}
#loginScreen .login-card{background:transparent;border:none;border-radius:0;box-shadow:none;max-width:none;width:100%;padding:0;text-align:left}
#loginScreen .login-form{margin-top:0;gap:10px}
#loginScreen .login-form .login-options{display:flex;flex-direction:column;gap:10px;margin:0}
#loginScreen .login-form label{color:#173a60;font-size:13px;font-weight:700;display:block}
#loginScreen .login-form select,#loginScreen .login-form input{width:100%;margin-top:6px;height:43px;border:1px solid #c6d6e6;background:#fff;color:#1d3d5c;font-size:14px;border-radius:7px;padding:9px 11px}
#loginScreen .password-control{position:relative;display:block}
#loginScreen .password-control input{padding-right:45px}
#loginScreen .password-control button{right:8px;top:8px}
#loginScreen #loginForm button[type=submit]{background:#124d7e;border:1px solid #124d7e;color:#fff;width:100%;font:700 17px Georgia,serif;height:46px;border-radius:7px;margin:5px 0 0}
#loginScreen #loginForm button[type=submit]:hover{background:#1f669e}
#loginScreen #loginError{min-height:16px;font-size:13px;color:#ae2138}
#loginScreen .hint-line{margin-top:6px;font-size:11.5px;color:#657f99;line-height:1.4}
#loginScreen .security-note{margin-top:15px;border-top:1px solid #e1eaf4;padding-top:12px;text-align:center;color:#647d94;font-size:12px}
#loginScreen .v25-footer{background:#143d66;color:#f2f8fc;width:100%;text-align:center;padding:11px 12px;font-size:12px;line-height:1.55}
#loginScreen .v25-footer small{display:block;color:#c1d5e5}
@media(max-width:920px){#loginScreen .v25-login-layout{grid-template-columns:1fr}#loginScreen .v25-campus-header{min-height:265px}}
@media(max-width:520px){#loginScreen .v25-emblem{width:93px;height:99px}#loginScreen .v25-campus-header{padding:14px 10px;min-height:260px}#loginScreen .v25-info-panel,#loginScreen .v25-login-panel{padding:18px}#loginScreen .v25-login-layout{padding:0 10px 16px;gap:14px}#loginScreen .v25-feature{gap:12px;padding:11px}#loginScreen .v25-feature-icon{height:46px;width:46px;font-size:23px}#loginScreen .v25-footer{font-size:11px}}

body #loginScreen{background:#f5f8fb}
