body.hxapp-login-page{background:#f3f6f5!important}
.hxapp-portal,.hxapp-portal *{box-sizing:border-box}
.hxapp-portal{width:calc(100% - 48px);max-width:1080px;margin:48px auto 24px;font-family:Inter,"Segoe UI",Arial,sans-serif;color:#193c41}
.hxapp-login-layout{display:grid;grid-template-columns:1.03fr 1fr;overflow:hidden;background:#fff;border:1px solid #e2e9e6;border-radius:24px;box-shadow:0 22px 70px #193c4110}
.hxapp-welcome-panel{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;padding:38px 46px 34px;background:linear-gradient(145deg,#123b40,#1c5155);color:#fff}
.hxapp-welcome-panel:after{content:"";position:absolute;z-index:-1;right:-165px;bottom:-165px;width:420px;height:420px;border:1px solid #ffffff12;border-radius:50%;box-shadow:0 0 0 46px #ffffff03,0 0 0 92px #ffffff02}
.hxapp-portal .hxapp-portal-logo{display:block;width:144px!important;height:auto!important;max-width:100%;padding:8px;background:#fff;border-radius:9px;margin:0 0 45px;object-fit:contain}
.hxapp-portal .hxapp-eyebrow,.hxapp-portal .hxapp-form-eyebrow{margin:0 0 16px;font-size:10px;font-weight:700;letter-spacing:2.3px;line-height:1.5}
.hxapp-portal .hxapp-eyebrow{color:#9cbfc0}
.hxapp-portal .hxapp-welcome-title{margin:0;color:#fff;font-size:25px;line-height:1.3;letter-spacing:-.5px;font-weight:400}
.hxapp-welcome-title>span{display:block}.hxapp-portal .hxapp-welcome-title strong{display:block;font-size:clamp(30px,3.1vw,41px);font-weight:750;line-height:1.14;letter-spacing:-1px;margin:12px 0 15px;color:#fff}
.hxapp-portal .hxapp-welcome-title .hxapp-portal-title{font-size:24px;color:#e3c48f;letter-spacing:-.4px;font-weight:500}
.hxapp-portal .hxapp-welcome-description{margin:22px 0 21px;font-size:13px;line-height:1.85;color:#bbd2d2}
.hxapp-skills{display:flex;flex-wrap:wrap;gap:7px}.hxapp-skills span{padding:6px 11px;border:1px solid #ffffff26;border-radius:20px;color:#e5eeee;font-size:10px;line-height:1.6}
.hxapp-portal .hxapp-welcome-note{margin:44px 0 0;font-size:11px;line-height:1.8;color:#9fbebf}.hxapp-welcome-note strong{font-weight:500;color:#d9e7e5}
.hxapp-portal .hxapp-login{min-width:0;align-self:center;padding:48px 46px 42px;margin:0;background:#fff}
.hxapp-portal .hxapp-form-eyebrow{color:#73938f;margin-bottom:12px}
.hxapp-portal .hxapp-login h2{margin:0 0 10px;color:#193c41;font-size:27px;font-weight:700;line-height:1.25;letter-spacing:-.7px}
.hxapp-portal .hxapp-form-intro{font-size:13px;color:#7b8d90;margin:0 0 30px;line-height:1.8}
.hxapp-portal .hxapp-login form{margin:0}
.hxapp-portal .hxapp-login label{display:block;margin:19px 0 8px;color:#385359;font-size:12px;font-weight:600;line-height:1.6}
.hxapp-portal .hxapp-login input:not([type=hidden]){width:100%;height:48px;margin:0;padding:12px 14px;background:#f8faf9;border:1px solid #dce5e1;border-radius:8px;font:14px "Segoe UI",Arial,sans-serif;color:#193c41;box-shadow:none}
.hxapp-portal .hxapp-login input::placeholder{color:#94a3a5;font-size:12px}
.hxapp-portal .hxapp-login input:focus{outline:2px solid #a8cbc3;outline-offset:2px;background:#fff;border-color:#7da49a}
.hxapp-password{display:flex;gap:8px;align-items:stretch}.hxapp-password input{min-width:0;flex:1}
.hxapp-password button,.hxapp-session-bar button{border:0;border-radius:7px;background:#e5f0ef;color:#174b50;padding:9px 14px;cursor:pointer}
.hxapp-portal .hxapp-password button{flex-shrink:0;font-family:inherit;font-size:11px;font-weight:600;background:#edf3f0;color:#496b62;border:1px solid #dce5e1;min-width:54px;box-shadow:none;text-transform:none}
.hxapp-portal .hxapp-login .hxapp-primary{display:flex;align-items:center;justify-content:space-between;width:100%;margin:26px 0 0;padding:14px 18px;background:#174b50;color:#fff;border:0;border-radius:8px;font:600 13px "Segoe UI",Arial,sans-serif;box-shadow:0 6px 16px #174b5014;cursor:pointer;text-transform:none;letter-spacing:.2px;line-height:1.6}
.hxapp-portal .hxapp-primary:hover{background:#216268}.hxapp-portal button:focus-visible,.hxapp-portal a:focus-visible{outline:3px solid #c1a36b;outline-offset:4px}
.hxapp-portal .hxapp-account-help{margin:20px 0 27px;color:#627c7c;font-size:11px;line-height:1.9}.hxapp-account-help span{color:#8b9b9c;font-size:10px}
.hxapp-teacher-access{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:22px;border-top:1px solid #edf1ee}
.hxapp-teacher-access>span{font-size:10px;color:#899b9a}.hxapp-portal a.hxapp-teacher-link{font-size:11px;font-weight:650;color:#285c55!important;text-decoration:none!important;line-height:1.7}.hxapp-teacher-link span{margin-left:5px}.hxapp-portal a.hxapp-teacher-link:hover{color:#927641!important;text-decoration:underline!important}
.hxapp-portal .hxapp-login-footer{text-align:center;margin:21px 0 0;padding:0 8px;color:#8b9d9c;font-size:10px;font-weight:400;line-height:1.7;letter-spacing:.1px}.hxapp-login-footer span{color:#5e7975;font:inherit}
.hxapp-portal .hxapp-error{background:#fff0ed;color:#9b352a;padding:12px;border-radius:7px;font-size:12px;line-height:1.6;margin:0 0 20px}
.hxapp-hint{font-size:12px!important;color:#557077}
.hxapp-session-bar{display:flex;gap:14px;justify-content:flex-end;align-items:center;padding:8px 20px;background:#eff6f5;border-bottom:1px solid #dbe7e9;font:13px Arial,sans-serif;color:#174b50}
.hxapp-exam-password .hxapp-password button{margin:0!important;font-size:13px!important;padding:8px 12px!important;flex-shrink:0}.hxapp-exam-password input{width:auto!important}
@media(min-width:1500px){.hxapp-portal{margin-top:65px}}
@media(max-width:850px){.hxapp-welcome-panel{padding:34px 30px}.hxapp-portal .hxapp-login{padding:40px 30px}.hxapp-portal .hxapp-welcome-title strong{font-size:32px}.hxapp-portal .hxapp-login h2{font-size:25px}}
@media(max-width:650px){.hxapp-portal{width:calc(100% - 24px);margin:20px auto}.hxapp-login-layout{grid-template-columns:1fr;border-radius:18px}.hxapp-welcome-panel{padding:26px 28px}.hxapp-portal .hxapp-portal-logo{width:115px!important;margin-bottom:25px}.hxapp-portal .hxapp-eyebrow{font-size:9px;margin-bottom:12px}.hxapp-portal .hxapp-welcome-title{font-size:19px}.hxapp-portal .hxapp-welcome-title strong{font-size:32px;margin:10px 0}.hxapp-welcome-title strong br{display:none}.hxapp-portal .hxapp-welcome-title .hxapp-portal-title{font-size:22px}.hxapp-portal .hxapp-welcome-description{font-size:12px;margin:17px 0}.hxapp-portal .hxapp-welcome-note{display:none}.hxapp-portal .hxapp-login{padding:30px 28px}.hxapp-portal .hxapp-form-intro{margin-bottom:23px}.hxapp-portal .hxapp-login-footer{font-size:9px;margin-top:17px}.hxapp-session-bar{font-size:12px;padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.hxapp-portal *{scroll-behavior:auto}}

.hxapp-access-error{box-sizing:border-box;max-width:1200px;margin:20px auto;padding:24px;background:#fff0ef;color:#721c24;border:3px solid #a51d27;border-radius:12px;scroll-margin-top:24px}.hxapp-access-error[hidden]{display:none!important}.hxapp-access-error h2{margin:0 0 14px;font-size:clamp(24px,4vw,34px);line-height:1.4;color:#721c24}.hxapp-access-error p{font-size:17px;line-height:1.7;overflow-wrap:anywhere}.hxapp-access-error .hxapp-access-detail{font-size:clamp(19px,3vw,24px);font-weight:700}
