
body:has(.login-shell){background:radial-gradient(ellipse at 5% 20%,#dce9ff,transparent 50%),radial-gradient(ellipse at 95% 95%,#e9dcff,transparent 45%),#f3f6fc}.wrap:has(.login-shell){max-width:1320px}.login-shell{max-width:1050px;display:grid;grid-template-columns:1.15fr 1fr;gap:0;margin:38px auto 50px;align-items:stretch;border-radius:28px;overflow:hidden;box-shadow:0 24px 70px #20386b16;border:1px solid #fff;background:#fff}.login-story{position:relative;overflow:hidden;background:radial-gradient(circle at 90% 85%,#725ae2,transparent 50%),linear-gradient(145deg,#144eae,#344cbd 55%,#6251cd);padding:36px 40px;color:white}.login-college{display:flex;align-items:center;gap:12px}.login-college img{width:52px;height:52px;object-fit:contain;border-radius:50%;background:#fff;padding:3px}.login-college>span{font-size:15px;font-weight:700}.login-college small{display:block;font-size:10px;letter-spacing:2px;font-weight:400;color:#ceddff;margin-top:4px}.login-tag{display:inline-block;margin-top:36px;font-size:12px;background:#ffffff19;border:1px solid #ffffff25;border-radius:30px;padding:7px 13px;color:#e1eaff}.login-story h1{font-size:34px;line-height:1.6;margin:20px 0 12px;letter-spacing:-.6px;color:#fff}.login-story h1 span{color:#a9e8ff}.login-story>p{color:#d5e2ff;font-size:14px;line-height:1.9}.login-illustration{height:175px;position:relative;margin:20px 0 8px}.login-orbit{position:absolute;width:170px;height:170px;border:1px solid #ffffff26;border-radius:50%;left:50%;top:0;transform:translateX(-50%)}.login-orbit:before{content:'';position:absolute;inset:20px;border:1px dashed #ffffff30;border-radius:50%}.login-book{position:absolute;left:50%;top:30px;transform:translateX(-50%) rotate(-8deg);width:112px;height:112px;display:grid;place-items:center;border-radius:28px;background:linear-gradient(140deg,#ffffff38,#ffffff12);border:1px solid #ffffff70;box-shadow:0 18px 36px #14255b30;backdrop-filter:blur(10px)}.login-book svg{width:65px;height:65px;color:#fff}.login-float{position:absolute;display:flex;align-items:center;gap:8px;background:#fff;color:#34558b;border-radius:12px;padding:11px 14px;box-shadow:0 10px 24px #17295d22;font-size:11px;animation:login-float 5s ease-in-out infinite}.login-float svg{width:20px;height:20px;color:#4e70df}.login-float.one{top:14px;left:0}.login-float.two{bottom:14px;right:0;animation-delay:-2s}.login-float.two svg{color:#1aaf94}.login-spark{position:absolute;width:8px;height:8px;border-radius:50%;background:#9ee7ff}.login-spark.s1{right:38px;top:25px}.login-spark.s2{left:65px;bottom:20px;background:#fde6a2}.login-story-foot{border-top:1px solid #ffffff25;padding-top:18px;font-size:12px;color:#dce5ff}.login-story-foot span{margin:0 9px;color:#92c9ff}.login-form{margin:0!important;padding:48px 36px!important;border:0!important;border-radius:0!important;box-shadow:none!important;display:flex;flex-direction:column;justify-content:center;background:#fff}.login-welcome-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#edf2ff;color:#4963d8;margin-bottom:23px}.login-welcome-icon svg{width:28px;height:28px}.login-form .eyebrow{font-size:12px;letter-spacing:0;color:#73829a}.login-form h2{font-size:27px;margin:7px 0;color:#1c3556}.login-form>p{font-size:13px;margin:5px 0 26px;color:#8190a4}.login-form label{font-size:14px;color:#405774;margin-top:16px}.login-form input:not([type=hidden]){font-size:16px;height:50px;border:1px solid #dbe3ee;border-radius:12px;background:#f8fafd;margin-top:8px;transition:border-color .2s,box-shadow .2s}.login-form input:focus{background:#fff;border-color:#597bed;box-shadow:0 0 0 4px #597bed12;outline:none}.login-form .btn.primary{min-height:50px;margin-top:26px;border-radius:12px;background:linear-gradient(110deg,#286ce4,#6356dc);box-shadow:0 7px 16px #465fda25;font-size:15px;justify-content:center}.login-form .back{font-size:12px;color:#8794a6;margin-top:20px}@keyframes login-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(max-width:850px){.login-shell{grid-template-columns:1fr 1fr;margin-top:24px}.login-story{padding:28px}.login-story h1{font-size:28px}.login-college>span{font-size:13px}.login-float{font-size:10px;padding:9px}.login-form{padding:32px 26px!important}.login-form h2{font-size:24px}}
@media(max-width:620px){.login-shell{display:block;margin:18px auto 26px;border-radius:22px}.login-story{padding:24px}.login-tag{margin-top:20px;font-size:11px}.login-story h1{font-size:27px;margin:14px 0 8px;line-height:1.45}.login-story>p{font-size:12px;margin-bottom:0}.login-illustration,.login-story-foot{display:none}.login-college img{width:44px;height:44px}.login-college>span{font-size:14px}.login-form{padding:28px 24px!important}.login-welcome-icon{display:none}.login-form>p{margin-bottom:12px}.login-form h2{font-size:24px}.login-form label{margin-top:12px}.login-form .btn.primary{margin-top:22px}}
@media(prefers-reduced-motion:reduce){.login-float{animation:none}.login-form input{transition:none}}

/* Compact phone layout and accessible controls */
.login-shell>*{min-width:0}.login-form input{width:100%;box-sizing:border-box}
@media(max-width:620px){.login-shell{margin-top:12px}.login-story{padding:20px 22px}.login-tag{display:none}.login-story h1{font-size:24px;margin-top:16px}.login-story>p{line-height:1.65}.login-form{padding:24px 22px!important}.login-college small{letter-spacing:1px}.login-form .back{min-height:36px;display:flex;align-items:center}}
@media(max-width:360px){.login-college>span{font-size:12px}.login-story h1{font-size:22px}.login-story,.login-form{padding-left:18px!important;padding-right:18px!important}}

.login-period{display:grid;grid-template-columns:1fr 1fr;gap:12px}.login-period>*{min-width:0}.login-period select{width:100%;height:48px;margin-top:8px;padding:0 12px;border:1px solid #dbe3ee;border-radius:12px;background:#f8fafd;color:#405774;font:inherit;font-size:16px;box-sizing:border-box}.login-period select:focus{outline:none;border-color:#597bed;box-shadow:0 0 0 4px #597bed12}
