/* GCC campus authentication — shared by student and admin login. */
:root[data-theme="dark"],:root[data-theme="light"]{--bg-main:#eef3f7;--bg-panel:#fff;--text-primary:#10243e;--text-secondary:#66778c;--border-color:#dbe5ee;--input-bg:#f7f9fb;--primary-logic:#1267c4;--primary-accent:#1267c4;--accent-logic:#1f7a35;--accent-hover:#145a27;--brand-gradient:linear-gradient(145deg,#082d62 0%,#0d5590 58%,#176b35 125%);--shadow-lg:0 22px 60px rgba(8,45,98,.14)}
body.gcc-auth{background:#eef3f7;color:#10243e}.gcc-auth .layout-wrapper{background:#eef3f7}.gcc-auth .brand-section{flex:1.15;min-height:100vh;padding:54px 6%;background:var(--brand-gradient);position:relative}.gcc-auth .brand-section::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:42px 42px;animation:none;border-radius:0;filter:none;width:auto;height:auto}.gcc-auth .brand-section::after{content:"";position:absolute;width:520px;height:520px;right:-280px;bottom:-290px;border:90px solid rgba(39,184,166,.13);border-radius:50%;filter:none;background:transparent}.gcc-auth .logic-particle{display:none}.gcc-auth .brand-header-top,.gcc-auth .brand-content{z-index:3}.gcc-auth .brand-title-mini{display:inline-flex;align-items:center;gap:10px;color:#61dec9;font-size:11px;letter-spacing:3px}.gcc-auth .brand-title-mini::before{content:"";width:30px;height:2px;background:#61dec9}.gcc-auth .brand-header-top h2{font-family:Georgia,'Times New Roman',serif;font-size:30px!important;letter-spacing:-.5px!important;margin-top:10px!important}.gcc-auth .brand-content h1{font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:clamp(42px,4.5vw,67px);letter-spacing:-1.5px;line-height:1.07}.gcc-auth .brand-content p{max-width:560px;line-height:1.85;color:rgba(255,255,255,.72)}.gcc-auth .brand-logo-large{width:72px;height:72px;border-radius:4px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);backdrop-filter:none;color:#59dbc8;font-size:31px}
.gcc-auth .slideshow-container{height:min(43vh,430px);max-width:510px;margin:34px 0 30px;border-radius:5px;border:1px solid rgba(255,255,255,.22);border-bottom:5px solid #44cbb5;box-shadow:0 24px 55px rgba(2,20,43,.34);background:#0b3767}.gcc-auth .slide-placeholder{background:linear-gradient(145deg,#0a3a79,#176b35)!important}.gcc-auth .brand-content-bottom{position:relative;z-index:3}.gcc-auth .brand-content-bottom h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,3vw,44px);letter-spacing:-1px;line-height:1.12}.gcc-auth .brand-content-bottom h1 span{color:#60dfca}.gcc-auth .brand-content-bottom p{color:rgba(255,255,255,.7)!important;max-width:600px;line-height:1.7!important}.gcc-auth .badges{margin-top:22px}.gcc-auth .badge{border-radius:3px;background:rgba(255,255,255,.09)!important;border:1px solid rgba(255,255,255,.17);color:#fff!important;padding:8px 13px}
.gcc-auth .login-section{flex:.85;background:#eef3f7;padding:54px;position:relative}.gcc-auth .login-section::before{content:"STUDENT PORTAL";position:absolute;top:34px;left:50%;transform:translateX(-50%);font-size:10px;font-weight:800;letter-spacing:3px;color:#1267c4;white-space:nowrap}.gcc-auth.auth-admin .login-section::before{content:"ADMINISTRATION PORTAL"}.gcc-auth .login-box{max-width:470px;padding:46px;border-radius:6px;border:1px solid #d6e1eb;background:#fff;box-shadow:0 22px 60px rgba(8,45,98,.13);position:relative}.gcc-auth .login-box::before{content:"";display:block!important;position:absolute;left:-1px;right:-1px;top:-1px;height:5px;background:linear-gradient(90deg,#1267c4,#27b8a6,#1f7a35);border-radius:6px 6px 0 0}.gcc-auth .login-header{margin-bottom:30px}.gcc-auth .login-header h2{font-family:Georgia,'Times New Roman',serif;font-size:34px;font-weight:700;color:#082d62;letter-spacing:-.7px}.gcc-auth .login-header p{font-size:14px;line-height:1.65;color:#6a7c91}.gcc-auth .form-group{margin-bottom:20px}.gcc-auth .form-group label{font-size:10px;letter-spacing:1.2px;color:#40566f;margin-bottom:9px}.gcc-auth .input-wrapper input{height:55px;border:1px solid #ccd9e5!important;border-radius:3px!important;background:#f7f9fb!important;color:#10243e!important;padding-left:48px!important}.gcc-auth .input-wrapper input:focus{border-color:#1267c4!important;background:#fff!important;box-shadow:0 0 0 4px rgba(18,103,196,.09)!important}.gcc-auth .field-icon{color:#1267c4!important}.gcc-auth .password-toggle{color:#698098!important}.gcc-auth .login-btn{height:55px;border-radius:3px!important;background:linear-gradient(90deg,#1267c4,#0c529f)!important;text-transform:uppercase;letter-spacing:1px;font-size:12px;box-shadow:none!important;margin-top:7px}.gcc-auth .login-btn:hover{background:linear-gradient(90deg,#1f7a35,#145a27)!important;transform:translateY(-2px);box-shadow:0 12px 24px rgba(31,122,53,.19)!important}.gcc-auth .error-card{border-radius:3px;background:#fff1f2;border:1px solid #fecdd3;color:#9f1239}.gcc-auth .register-link{font-size:13px;color:#738398}.gcc-auth .register-link a,.gcc-auth a[href*="forgot"],.gcc-auth a[href*="parent_login"]{color:#1267c4!important}.gcc-auth .lang-pick{border-radius:3px!important;background:#fff;border-color:#ccd9e5!important}.gcc-auth .lang-pick a{border-radius:0!important}.gcc-auth .lang-pick a.on{background:#1267c4!important}.gcc-auth .theme-toggle-wrapper{top:24px;right:28px}.gcc-auth .theme-toggle-btn{width:42px;height:42px;border-radius:3px;background:#fff;color:#1267c4;border:1px solid #ccd9e5;box-shadow:none}.gcc-auth .mobile-footer{color:#8190a2}
@media(max-width:980px){.gcc-auth .brand-section{padding:46px 4%}.gcc-auth .login-section{padding:42px 28px}.gcc-auth .login-box{padding:38px 32px}}
@media(max-width:768px){body.gcc-auth{background:#eef3f7!important}.gcc-auth .layout-wrapper{min-height:100vh}.gcc-auth .brand-section{display:none}.gcc-auth .login-section{min-height:100vh;padding:90px 20px 36px;background:linear-gradient(180deg,#eaf2fa,#f7fafc)}.gcc-auth .login-section::before{top:32px}.gcc-auth .theme-toggle-wrapper{position:absolute;top:20px;right:18px}.gcc-auth .login-box{padding:36px 24px!important;border:1px solid #d6e1eb!important;box-shadow:0 18px 45px rgba(8,45,98,.12)!important;background:#fff!important}.gcc-auth .login-header h2{font-size:30px}.gcc-auth .mobile-footer{display:block}}
@media(max-width:390px){.gcc-auth .login-section{padding-inline:14px}.gcc-auth .login-box{padding:32px 20px!important}.gcc-auth .theme-toggle-wrapper{gap:6px!important}.gcc-auth .lang-pick a{padding:7px 10px}}

/* Registration uses the same institutional language with room for longer forms. */
.gcc-auth .register-section{flex:.9;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;min-height:100vh;padding:88px 48px 54px;background:#eef3f7;position:relative}.gcc-auth .register-section::before{content:"STUDENT ADMISSIONS";position:absolute;top:34px;left:50%;transform:translateX(-50%);font-size:10px;font-weight:800;letter-spacing:3px;color:#1267c4;white-space:nowrap}.gcc-auth .register-box{width:100%;max-width:580px;padding:46px;border-radius:6px;border:1px solid #d6e1eb;background:#fff;box-shadow:0 22px 60px rgba(8,45,98,.13);position:relative}.gcc-auth .register-box::before{left:-1px;right:-1px;top:-1px;height:5px;border-radius:6px 6px 0 0;background:linear-gradient(90deg,#1267c4,#27b8a6,#1f7a35)}.gcc-auth .register-section .login-header h2{font-family:Georgia,'Times New Roman',serif;font-size:34px;color:#082d62;letter-spacing:-.7px}.gcc-auth .register-section .login-header p{color:#6a7c91;line-height:1.65}.gcc-auth .register-section .form-group{margin-bottom:18px}.gcc-auth .register-section .form-group label{font-size:10px;letter-spacing:1.15px;color:#40566f;margin-bottom:9px}.gcc-auth .register-section .form-group input,.gcc-auth .register-section .form-group select{min-height:53px;border:1px solid #ccd9e5!important;border-radius:3px!important;background:#f7f9fb!important;color:#10243e!important}.gcc-auth .register-section .form-group input:focus,.gcc-auth .register-section .form-group select:focus{border-color:#1267c4!important;background:#fff!important;box-shadow:0 0 0 4px rgba(18,103,196,.09)!important}.gcc-auth .register-section .field-icon{color:#1267c4!important}.gcc-auth .register-section .login-btn{height:55px;border-radius:3px!important;background:linear-gradient(90deg,#1267c4,#0c529f)!important;text-transform:uppercase;letter-spacing:1px;font-size:12px;box-shadow:none!important}.gcc-auth .register-section .login-btn:hover{background:linear-gradient(90deg,#1f7a35,#145a27)!important;box-shadow:0 12px 24px rgba(31,122,53,.19)!important}.gcc-auth.auth-register .brand-section{justify-content:space-between}.gcc-auth.auth-register .slideshow-container{height:min(38vh,390px)}
@media(max-width:980px){.gcc-auth .register-section{padding-inline:28px}.gcc-auth .register-box{padding:38px 32px}}
@media(max-width:768px){.gcc-auth .register-section{min-height:100vh;padding:88px 20px 38px;background:linear-gradient(180deg,#eaf2fa,#f7fafc)}.gcc-auth .register-section::before{top:30px}.gcc-auth .register-box{padding:36px 24px!important;border:1px solid #d6e1eb!important;box-shadow:0 18px 45px rgba(8,45,98,.12)!important;background:#fff!important}.gcc-auth .register-section .theme-toggle-wrapper{position:absolute;top:18px;right:18px}.gcc-auth .register-section .login-header h2{font-size:30px}}
@media(max-width:390px){.gcc-auth .register-section{padding-inline:14px}.gcc-auth .register-box{padding:32px 20px!important}}

/* Keep the registration artwork visible while the long form scrolls. */
@media(min-width:769px){.gcc-auth.auth-register .brand-section{position:sticky!important;top:0;height:100vh;min-height:100vh;align-self:flex-start}}
