.s-2fa-code-entry{position:relative;margin-bottom:1.25rem;padding:1.35rem 1.1rem 1.45rem;border:1px solid var(--app-border, #e2e6e9);border-radius:16px;background:linear-gradient(165deg,color-mix(in srgb,var(--app-surface, #fff) 92%,var(--brand-primary, #0c6277) 8%) 0%,var(--app-surface-muted, #f4f6f8) 100%);box-shadow:inset 0 1px #ffffff8c,0 14px 32px -20px #0c627747}.s-2fa-code-entry:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:16px 16px 0 0;background:linear-gradient(90deg,var(--brand-primary, #0c6277),color-mix(in srgb,var(--brand-primary, #0c6277) 45%,#1f8a5b 55%))}.s-2fa-code-entry__head{text-align:center;margin-bottom:1.05rem}.s-2fa-code-entry__title-row{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;margin:0 0 .65rem}.s-2fa-code-entry__title-icon{font-size:1.35rem;color:var(--brand-primary, #0c6277);line-height:1}.s-2fa-code-entry__label{margin:0;font-size:1.05rem;font-weight:800;letter-spacing:.02em;color:var(--app-ink, #1f2528)}.s-2fa-code-entry__hint{margin:0 auto;max-width:22rem;font-size:.8125rem;line-height:1.5;color:var(--app-ink-4, #6c757d)}.s-2fa-code-entry__field{max-width:17rem;margin:0 auto}.s-2fa-code-entry .s-2fa-otp-entry{width:100%;max-width:none;min-height:3.5rem;margin:0;display:block;font-family:JetBrains Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:2rem;font-weight:800;letter-spacing:.55em;padding:.75rem .5rem .75rem calc(.65rem + .12em);text-align:center;text-indent:.12em;color:var(--app-ink, #1f2528);border-radius:14px;border-width:2px;border-color:var(--app-border, #e2e6e9);background:var(--app-surface, #fff);box-shadow:inset 0 2px 4px #0000000a,0 10px 26px -16px #0c627759}.s-2fa-code-entry .s-2fa-otp-entry::placeholder{color:var(--app-ink-5, #9aa5ac);opacity:.55;letter-spacing:.35em}.s-2fa-code-entry .s-2fa-otp-entry:focus{border-color:var(--brand-primary, #0c6277);background:var(--app-surface, #fff);box-shadow:inset 0 2px 4px #00000008,0 0 0 5px color-mix(in srgb,var(--brand-primary, #0c6277) 22%,transparent);outline:none}.s-2fa-code-entry .s-2fa-otp-entry.is-invalid{border-color:var(--bs-danger, #dc3545);box-shadow:inset 0 2px 4px #00000008,0 0 0 4px #dc354526}@media(max-width:575.98px){.s-2fa-code-entry .s-2fa-otp-entry{font-size:1.65rem;letter-spacing:.42em;min-height:3.15rem;padding-inline-start:calc(.5rem + .08em)}}[data-bs-theme=dark] .s-2fa-code-entry{box-shadow:inset 0 1px #ffffff0a,0 14px 36px -18px #00000073}[data-bs-theme=dark] .s-2fa-code-entry .s-2fa-otp-entry{box-shadow:inset 0 2px 6px #0003,0 10px 28px -14px #00000080}.s-2fa-challenge{--token-primary: #0c6277;max-width:26rem;margin-inline:auto}.s-2fa-challenge__hero{display:inline-flex;align-items:center;justify-content:center;width:76px;height:76px;border-radius:22px;background:#0c62771f;color:var(--token-primary);font-size:32px}.s-2fa-challenge .s-2fa-code-entry{margin-bottom:1.35rem;border-color:#0c62771f;background:linear-gradient(165deg,#fff,#0c62770a);box-shadow:inset 0 1px #ffffffe6,0 12px 28px -18px #0c627740}.s-2fa-challenge .s-2fa-recovery-input{text-align:center;font-family:JetBrains Mono,SFMono-Regular,Menlo,Consolas,monospace;font-weight:600;letter-spacing:.12em;padding:.85rem;border-radius:12px;border-width:2px;border-color:#dee2e6;background:#f8f9fa;max-width:22rem;margin-inline:auto;display:block;width:100%}.s-2fa-challenge .s-2fa-recovery-input:focus{border-color:var(--token-primary);background:#fff;box-shadow:0 0 0 4px #0c627726;outline:none}.s-2fa-challenge__verify{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:12px 18px;border-radius:12px;font-weight:700;font-size:14px;background:var(--token-primary);color:#fff;border:0;transition:background-color .15s ease}.s-2fa-challenge__verify:hover{background:#094b5b;color:#fff}.s-2fa-challenge__verify i{font-size:16px}.s-2fa-challenge__alt{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:11px 18px;border-radius:12px;background:#fff;border:1px solid #dee2e6;color:#212529;font-weight:600;font-size:13.5px;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.s-2fa-challenge__alt:hover{background:#f8f9fa;border-color:var(--token-primary)}.s-2fa-challenge__link{background:transparent;border:0;color:var(--token-primary);font-weight:600;font-size:13px;text-decoration:none;padding:6px 8px;cursor:pointer;display:inline-flex;align-items:center;gap:5px}.s-2fa-challenge__link i{font-size:13px}.s-2fa-challenge__link:hover{text-decoration:underline}.s-2fa-challenge .s-2fa-alert{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:12px;border:1px solid transparent;font-size:12.5px;line-height:1.45;margin-bottom:1rem}.s-2fa-challenge .s-2fa-alert i{font-size:16px;line-height:1;flex-shrink:0;margin-top:1px}.s-2fa-challenge .s-2fa-alert--info{background:#0c627714;color:#06343f;border-color:#0c627738}.s-2fa-challenge .s-2fa-alert--success{background:#28a7451f;color:#208637;border-color:#28a74540}.s-2fa-challenge .s-2fa-alert--danger{background:#dc35451a;color:#cf2434;border-color:#dc354540}.auth-page-wrapper{min-height:100vh;display:flex;background:#f8f9fa}.auth-background-left{flex:1;background:linear-gradient(135deg,#0c6277 0% 100%);display:none}.auth-content-container{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;background:#fff}.auth-background-right{flex:1;background:linear-gradient(135deg,#0c6277 0% 100%);display:flex;align-items:center;justify-content:center;padding:3rem}.auth-branding{text-align:center;color:#fff}.auth-brand-title{font-size:2.5rem;font-weight:700;color:#fff;margin:0}.auth-card-modern{width:100%;max-width:480px;background:#fff;padding:2rem}.auth-logo-section{text-align:center;margin-bottom:2rem}.auth-logo-img{max-width:200px;height:auto}.auth-heading{font-size:1.75rem;font-weight:700;color:#0c6277;margin-bottom:.5rem}.auth-subheading{font-size:.875rem;color:#6c757d;margin-bottom:2rem}.auth-form-modern{width:100%}.auth-form-modern .form-group-modern{margin-bottom:1.5rem}[dir=rtl] .auth-heading,[dir=rtl] .auth-subheading,[dir=rtl] .auth-form-modern .form-label,[dir=rtl] .auth-form-modern .form-control,[dir=rtl] .auth-form-modern .invalid-feedback,[dir=rtl] .terms-text-modern,[dir=rtl] .info-text,[dir=rtl] .verification-instructions{text-align:right}.auth-links-section{text-align:center;margin-bottom:1.5rem}.auth-link-text{color:#0c6277;text-decoration:none;font-size:.875rem;font-weight:500}.auth-link-text:hover{text-decoration:underline}.auth-divider{position:relative;text-align:center;margin:1.5rem 0}.auth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#dee2e6}.auth-divider span{position:relative;background:#fff;padding:0 1rem;color:#6c757d;font-size:.875rem}.social-login-buttons{display:flex;gap:1rem;margin-bottom:1.5rem}.btn-social-login{flex:1;padding:.875rem;border:2px solid #dee2e6;border-radius:.375rem;background:#fff;color:#212529;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-social-login:hover{border-color:#0c6277}.btn-social-login i{font-size:1.125rem}.google-btn{display:flex;align-items:center;justify-content:center;background-color:#fff;border:1px solid #dee2e6;color:#212529;font-weight:500;transition:background-color .3s,box-shadow .3s}.google-btn:hover{background-color:#f8f9fa;box-shadow:var(--ium-shadow-sm);color:#212529}.auth-footer-text{text-align:center;font-size:.875rem;color:#6c757d}.auth-link-primary{color:#0c6277;text-decoration:none;font-weight:600}.auth-link-primary:hover{text-decoration:underline}.demo-accounts-section{margin-top:2rem;padding-top:2rem;border-top:1px solid #dee2e6;text-align:center}.demo-title{font-size:.875rem;color:#6c757d;margin-bottom:.5rem}.demo-item{display:block;font-size:.8125rem;color:#6c757d;margin-bottom:.25rem}.demo-accounts-box{background:#f8f9fa;border:1px solid #dee2e6;border-radius:.375rem;padding:1rem}.demo-account-item{background:#fff;padding:.75rem;border-radius:.375rem;font-size:.875rem;border:1px solid #dee2e6}.terms-agreement-box{background:#f8f9fa;padding:1rem;border-radius:.375rem;margin-bottom:1.5rem}.terms-text-modern{font-size:.875rem;color:#6c757d;margin:0;line-height:1.6}.terms-link{color:#0c6277;text-decoration:none;font-weight:600}.terms-link:hover{text-decoration:underline}.verification-code-display{background:#f8f9fa;border:2px solid #dee2e6;border-radius:.75rem;padding:1.5rem;text-align:center;font-size:2.5rem;font-weight:700;color:#0c6277;letter-spacing:.5rem;margin:2rem 0}.verification-instructions{font-size:.875rem;color:#6c757d;line-height:1.6;margin-bottom:1rem}.verification-footer{margin-top:3rem;text-align:center}.copyright-text{font-size:.875rem;color:#6c757d;margin:0}.info-box-modern{background:#0c627714;border:1px solid #0c6277;border-radius:.375rem;padding:1rem;display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1.5rem}.info-icon{color:#0c6277;font-size:1.125rem;flex-shrink:0}.info-text{font-size:.875rem;color:#0c6277;margin:0;line-height:1.6}@media(max-width:991px){.auth-background-right{display:none}.auth-content-container{flex:1}}@media(max-width:576px){.auth-card-modern{padding:1.5rem}.auth-heading{font-size:1.125rem}.social-login-buttons{flex-direction:column}}.auth-form-container{width:100%;max-width:480px;margin-inline:auto;color:var(--color-text-primary)}.auth-title{font-size:1.75rem;font-weight:700;color:var(--color-primary);margin-bottom:.5rem}.auth-subtitle{font-size:.875rem;color:var(--color-text-muted);margin-bottom:1.5rem}[data-bs-theme=dark] .auth-content-container img[alt="IUM Logo"]{filter:brightness(0) invert(1) opacity(.92)}[data-bs-theme=dark] .auth-page-wrapper,[data-bs-theme=dark] .auth-content-container{background:var(--color-bg)}[data-bs-theme=dark] .auth-card-modern{background:var(--color-surface);color:var(--color-text-primary)}[data-bs-theme=dark] .auth-heading,[data-bs-theme=dark] .auth-title{color:var(--color-text-primary)}[data-bs-theme=dark] .auth-subheading,[data-bs-theme=dark] .auth-subtitle{color:var(--color-text-muted)}[data-bs-theme=dark] .auth-divider:before{background:var(--color-border)}[data-bs-theme=dark] .auth-divider span{background:var(--color-surface);color:var(--color-text-muted)}[data-bs-theme=dark] .btn-social-login,[data-bs-theme=dark] .google-btn{background:var(--color-surface-elevated);border-color:var(--color-border);color:var(--color-text-primary)}[data-bs-theme=dark] .btn-social-login:hover,[data-bs-theme=dark] .google-btn:hover{border-color:var(--color-primary);background:var(--color-surface-hover);color:var(--color-text-primary)}[data-bs-theme=dark] .auth-footer-text,[data-bs-theme=dark] .copyright-text{color:var(--color-text-muted)}[data-bs-theme=dark] .demo-accounts-section{border-top-color:var(--color-border)}[data-bs-theme=dark] .demo-title,[data-bs-theme=dark] .demo-item{color:var(--color-text-muted)}[data-bs-theme=dark] .demo-accounts-box{background:var(--color-surface-sunken);border-color:var(--color-border);color:var(--color-text-secondary)}[data-bs-theme=dark] .demo-accounts-box h6{color:var(--color-text-primary)}[data-bs-theme=dark] .demo-account-item{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text-secondary)}[data-bs-theme=dark] .terms-agreement-box{background:var(--color-surface-sunken)}[data-bs-theme=dark] .terms-text-modern{color:var(--color-text-muted)}[data-bs-theme=dark] .verification-code-display{background:var(--color-surface-sunken);border-color:var(--color-border);color:var(--color-primary)}[data-bs-theme=dark] .verification-instructions{color:var(--color-text-muted)}[data-bs-theme=dark] .info-box-modern{background:var(--color-primary-soft);border-color:var(--color-border)}[data-bs-theme=dark] .info-text{color:var(--color-text-secondary)}[data-bs-theme=dark] .auth-card-modern .form-label,[data-bs-theme=dark] .auth-form-container .form-label,[data-bs-theme=dark] .auth-form-modern .form-label{color:var(--color-text-primary)}[data-bs-theme=dark] .auth-card-modern .form-control,[data-bs-theme=dark] .auth-card-modern .form-select,[data-bs-theme=dark] .auth-form-container .form-control,[data-bs-theme=dark] .auth-form-container .form-select,[data-bs-theme=dark] .auth-form-modern .form-control,[data-bs-theme=dark] .auth-form-modern .form-select{background-color:var(--color-field-fill);border-color:var(--color-border);color:var(--color-text-primary)}[data-bs-theme=dark] .auth-card-modern .form-control::placeholder,[data-bs-theme=dark] .auth-card-modern .form-select::placeholder,[data-bs-theme=dark] .auth-form-container .form-control::placeholder,[data-bs-theme=dark] .auth-form-container .form-select::placeholder,[data-bs-theme=dark] .auth-form-modern .form-control::placeholder,[data-bs-theme=dark] .auth-form-modern .form-select::placeholder{color:var(--color-text-muted);opacity:1}[data-bs-theme=dark] .auth-card-modern .form-control:focus,[data-bs-theme=dark] .auth-card-modern .form-select:focus,[data-bs-theme=dark] .auth-form-container .form-control:focus,[data-bs-theme=dark] .auth-form-container .form-select:focus,[data-bs-theme=dark] .auth-form-modern .form-control:focus,[data-bs-theme=dark] .auth-form-modern .form-select:focus{background-color:var(--color-surface);border-color:var(--color-primary);color:var(--color-text-primary);box-shadow:0 0 0 .2rem var(--color-focus-ring)}[data-bs-theme=dark] .auth-card-modern .form-control:disabled,[data-bs-theme=dark] .auth-card-modern .form-control[readonly],[data-bs-theme=dark] .auth-card-modern .form-select:disabled,[data-bs-theme=dark] .auth-card-modern .form-select[readonly],[data-bs-theme=dark] .auth-form-container .form-control:disabled,[data-bs-theme=dark] .auth-form-container .form-control[readonly],[data-bs-theme=dark] .auth-form-container .form-select:disabled,[data-bs-theme=dark] .auth-form-container .form-select[readonly],[data-bs-theme=dark] .auth-form-modern .form-control:disabled,[data-bs-theme=dark] .auth-form-modern .form-control[readonly],[data-bs-theme=dark] .auth-form-modern .form-select:disabled,[data-bs-theme=dark] .auth-form-modern .form-select[readonly]{background-color:var(--color-surface-sunken);color:var(--color-text-muted)}[data-bs-theme=dark] .auth-card-modern .form-check-label,[data-bs-theme=dark] .auth-form-container .form-check-label,[data-bs-theme=dark] .auth-form-modern .form-check-label{color:var(--color-text-secondary)}[data-bs-theme=dark] .auth-card-modern .form-check-input,[data-bs-theme=dark] .auth-form-container .form-check-input,[data-bs-theme=dark] .auth-form-modern .form-check-input{background-color:var(--color-field-fill);border-color:var(--color-border-strong)}[data-bs-theme=dark] .auth-card-modern .form-check-input:checked,[data-bs-theme=dark] .auth-form-container .form-check-input:checked,[data-bs-theme=dark] .auth-form-modern .form-check-input:checked{background-color:var(--color-primary);border-color:var(--color-primary)}[data-bs-theme=dark] .auth-card-modern .form-check-input:focus,[data-bs-theme=dark] .auth-form-container .form-check-input:focus,[data-bs-theme=dark] .auth-form-modern .form-check-input:focus{box-shadow:0 0 0 .2rem var(--color-focus-ring)}[data-bs-theme=dark] .auth-card-modern .form-text,[data-bs-theme=dark] .auth-form-container .form-text,[data-bs-theme=dark] .auth-form-modern .form-text{color:var(--color-text-muted)}[data-bs-theme=dark] .auth-card-modern .invalid-feedback,[data-bs-theme=dark] .auth-form-container .invalid-feedback,[data-bs-theme=dark] .auth-form-modern .invalid-feedback{color:var(--color-danger)}[data-bs-theme=dark] .auth-link-text,[data-bs-theme=dark] .auth-link-primary,[data-bs-theme=dark] .terms-link{color:var(--color-text-link)}[data-bs-theme=dark] .auth-link-text:hover,[data-bs-theme=dark] .auth-link-primary:hover,[data-bs-theme=dark] .terms-link:hover{color:var(--color-text-link-hover)}[data-bs-theme=dark] .auth-content-container .btn-link{color:var(--color-text-link)}[data-bs-theme=dark] .auth-content-container .btn-link:hover{color:var(--color-text-link-hover)}[data-bs-theme=dark] .auth-card-modern .alert-success,[data-bs-theme=dark] .auth-form-container .alert-success{background-color:var(--color-success-soft);border-color:var(--color-success-soft);color:var(--color-success)}[data-bs-theme=dark] .auth-card-modern .alert-warning,[data-bs-theme=dark] .auth-form-container .alert-warning{background-color:var(--color-warning-soft);border-color:var(--color-warning-soft);color:var(--color-warning)}[data-bs-theme=dark] .auth-card-modern .alert-danger,[data-bs-theme=dark] .auth-form-container .alert-danger{background-color:var(--color-danger-soft);border-color:var(--color-danger-soft);color:var(--color-danger)}[data-bs-theme=dark] .auth-card-modern .alert-info,[data-bs-theme=dark] .auth-form-container .alert-info{background-color:var(--color-info-soft);border-color:var(--color-info-soft);color:var(--color-info)}[data-bs-theme=dark] .auth-content-container .text-muted{color:var(--color-text-muted)!important}[data-bs-theme=dark] .auth-content-container .text-danger{color:var(--color-danger)!important}[data-bs-theme=dark] .s-2fa-challenge .s-2fa-code-entry{background:linear-gradient(165deg,var(--color-surface) 0%,var(--color-surface-elevated) 100%);border-color:var(--color-border)}[data-bs-theme=dark] .s-2fa-challenge .s-2fa-recovery-input{background:var(--color-field-fill);border-color:var(--color-border);color:var(--color-text-primary)}[data-bs-theme=dark] .s-2fa-challenge .s-2fa-recovery-input:focus{background:var(--color-surface);border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-focus-ring)}[data-bs-theme=dark] .s-2fa-challenge .s-2fa-challenge__alt{background:var(--color-surface-elevated);border-color:var(--color-border);color:var(--color-text-primary)}[data-bs-theme=dark] .s-2fa-challenge .s-2fa-challenge__alt:hover{background:var(--color-surface-hover);border-color:var(--color-primary)}[data-bs-theme=dark] .auth-icon-circle{background:var(--color-primary-soft)!important}[data-bs-theme=dark] .auth-icon-circle .text-primary{color:var(--color-primary)!important}.auth-page-wrapper--student-signup .auth-content-container{align-items:flex-start;justify-content:center;padding-block:1rem;padding-inline:1.5rem}@media(min-width:992px)and (min-height:720px){.auth-page-wrapper--student-signup .auth-content-container{align-items:center}}.auth-card-modern--student-signup{max-width:560px;padding:1.25rem}.auth-card-modern--student-signup .auth-logo-section{margin-bottom:.75rem}.auth-card-modern--student-signup .auth-heading--student-signup{font-size:1.125rem;font-weight:700;margin-bottom:.5rem}.auth-card-modern--student-signup .auth-subheading--student-signup{font-size:.8125rem;margin-bottom:1rem;line-height:1.25}.auth-card-modern--student-signup .auth-form-modern--student-signup .form-label{font-size:.8125rem;margin-bottom:.25rem}.auth-card-modern--student-signup .terms-agreement-box--student-signup{margin-top:.5rem;padding:.5rem 1rem;margin-bottom:.5rem}.auth-card-modern--student-signup .terms-agreement-box--student-signup .terms-text-modern{font-size:.8125rem;line-height:1.25}.auth-card-modern--student-signup .auth-footer-text--student-signup{margin-top:.5rem;font-size:.8125rem}@media(max-width:576px){.auth-card-modern--student-signup{padding:1rem}}
