.login-page {--ink: #e8f5f4;--muted: #8da6ab;--line: rgba(173, 232, 226, .15);--teal: #55dfca;--deep-teal: #123d44;min-height: 100vh;color: var(--ink);background: #071d2a;font-family: Georgia, "Noto Serif SC", "Songti SC", serif;}.login-shell {position: relative;display: flex;align-items: center;min-height: 100vh;overflow: hidden;isolation: isolate;padding: 3rem 0;background-image: linear-gradient(rgba(140, 218, 208, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(140, 218, 208, .045) 1px, transparent 1px);background-size: 42px 42px;}.login-shell::before, .login-shell::after, .login-orbit {position: absolute;border-radius: 50%;content: "";pointer-events: none;}.login-shell::before { width: 49rem; height: 49rem; top: -26rem; left: -13rem; background: radial-gradient(circle, rgba(22, 151, 155, .26), transparent 67%); }.login-shell::after { width: 44rem; height: 44rem; right: -15rem; bottom: -25rem; background: radial-gradient(circle, rgba(79, 221, 194, .16), transparent 66%); }.login-orbit { border: 1px solid rgba(111, 230, 215, .13); z-index: -1; }.login-orbit-one { width: 42rem; height: 42rem; top: -15rem; right: 8%; }.login-orbit-two { width: 25rem; height: 25rem; bottom: -12rem; left: 31%; }.login-brand, .login-mobile-brand { display: inline-flex; align-items: center; gap: .7rem; color: #fff; font-family: "Palatino Linotype", "Noto Serif SC", serif; font-size: 1.35rem; font-weight: 700; letter-spacing: .04em; text-decoration: none; }.login-brand-mark { display: inline-grid; place-items: center; width: 2.35rem; height: 2.35rem; border: 1px solid rgba(106, 239, 218, .55); border-radius: .7rem; color: var(--teal); background: rgba(83, 223, 200, .1); box-shadow: inset 0 0 20px rgba(84, 223, 202, .1); }.login-introduction { max-width: 31rem; padding: 1rem 1.2rem; }.login-introduction-copy { margin: 5.2rem 0 3.3rem; }.login-eyebrow { display: flex; align-items: center; gap: .55rem; margin: 0 0 1rem; color: var(--teal); font-family: "Courier New", monospace; font-size: .66rem; font-weight: 700; letter-spacing: .16em; }.login-eyebrow span { width: 1.45rem; height: 1px; background: currentColor; }.login-introduction h1 { margin: 0; color: #f1fbf9; font-size: clamp(2.7rem, 4.2vw, 4.45rem); font-weight: 700; letter-spacing: -.08em; line-height: 1.13; }.login-introduction h1 span { color: var(--teal); }.login-description { max-width: 25rem; margin: 1.5rem 0 0; color: var(--muted); font-size: 1rem; line-height: 1.9; }.login-signal-card { max-width: 23rem; padding: 1rem 1.15rem; border: 1px solid var(--line); border-radius: .3rem; background: rgba(9, 38, 50, .45); backdrop-filter: blur(8px); }.login-signal-head { display: flex; justify-content: space-between; color: #aac2c2; font-size: .77rem; }.login-online { color: var(--teal); }.login-online i { display: inline-block; width: .38rem; height: .38rem; margin-right: .35rem; border-radius: 50%; background: currentColor; box-shadow: 0 0 8px currentColor; }.login-signal-bars { display: flex; align-items: end; gap: .24rem; height: 1.4rem; margin-top: .7rem; }.login-signal-bars i { flex: 1; min-height: 20%; background: linear-gradient(to top, #229889, #78f2dd); opacity: .8; }.login-signal-bars i:nth-child(3n) { height: 100%; }.login-signal-bars i:nth-child(3n + 1) { height: 55%; }.login-signal-bars i:nth-child(3n + 2) { height: 75%; }.login-card { position: relative; overflow: hidden; border: 1px solid rgba(190, 240, 233, .19); border-radius: .4rem; background: rgba(10, 36, 48, .92); box-shadow: 0 2.2rem 5.5rem rgba(0, 8, 13, .42), inset 0 1px rgba(255, 255, 255, .035); backdrop-filter: blur(18px); }.login-card-topline { height: 3px; background: linear-gradient(90deg, transparent, var(--teal) 20%, #d2fff8 50%, var(--teal) 80%, transparent); }.login-card-body { padding: 3rem; }.login-mobile-brand { margin-bottom: 2.8rem; }.login-heading { margin-bottom: 2rem; }.login-heading .login-eyebrow { margin-bottom: .7rem; }.login-heading h1 { margin: 0; color: #fff; font-size: 2rem; letter-spacing: -.05em; }.login-heading > p:last-child { margin: .55rem 0 0; color: var(--muted); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .9rem; }.login-page .alert { margin-bottom: 1.3rem; border: 1px solid rgba(255, 186, 135, .25); border-radius: .2rem; color: #ffe4cd; background: rgba(164, 73, 25, .2); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .85rem; }.login-field { margin-bottom: 1.2rem; }.login-field label { display: block; margin-bottom: .5rem; color: #c8d8d8; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .8rem; font-weight: 600; }.login-input-wrap { position: relative; }.login-input-wrap > i { position: absolute; z-index: 1; top: 50%; left: .95rem; transform: translateY(-50%); color: #7fb7b3; font-size: 1rem; pointer-events: none; }.login-page .form-control { height: 3.2rem; padding: .75rem 2.9rem .75rem 2.8rem; border: 1px solid rgba(156, 220, 211, .2); border-radius: .2rem; color: #edf8f6; background: rgba(1, 20, 30, .52); box-shadow: none; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .94rem; transition: border-color .2s, background .2s, box-shadow .2s; }.login-page .form-control::placeholder { color: #66858a; }.login-page .form-control:focus { border-color: var(--teal); background: rgba(3, 29, 39, .9); box-shadow: 0 0 0 .22rem rgba(85, 223, 202, .1); }.login-password-toggle { position: absolute; top: 0; right: 0; width: 2.85rem; height: 100%; border: 0; color: #80aaa9; background: transparent; }.login-password-toggle:hover, .login-password-toggle:focus-visible { color: var(--teal); outline: none; }.login-options { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin: .2rem 0 1.8rem; }.login-checks { display: flex; flex-wrap: wrap; gap: .35rem 1rem; }.login-page .form-check { min-height: auto; margin: 0; }.login-page .form-check-input { margin-top: .2rem; border-color: #5e8888; border-radius: .1rem; background-color: transparent; }.login-page .form-check-input:checked { border-color: var(--teal); background-color: var(--teal); }.login-page .form-check-label, .login-forgot { color: #91abaa; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .72rem; }.login-forgot { flex: 0 0 auto; color: var(--teal); text-decoration: none; }.login-forgot:hover { color: #c4fff4; text-decoration: underline; }.login-submit { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 3.25rem; padding: 0 1.2rem 0 1.35rem; border: 1px solid #70edda; border-radius: .2rem; color: #06252c; background: var(--teal); box-shadow: 0 .7rem 1.8rem rgba(59, 220, 190, .16); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .92rem; font-weight: 700; transition: transform .2s, box-shadow .2s, background .2s; }.login-submit:hover { transform: translateY(-2px); background: #a0ffed; box-shadow: 0 1rem 2rem rgba(59, 220, 190, .25); }.login-submit:focus-visible { outline: 3px solid rgba(160, 255, 237, .45); outline-offset: 3px; }.login-submit:disabled { cursor: wait; transform: none; opacity: .7; }.login-security-note { margin: 1.3rem 0 0; color: #6e9294; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .71rem; text-align: center; }.login-security-note i { margin-right: .35rem; color: #69cdbd; }.auth-shell { justify-content: center; padding: 2rem 1rem; }.auth-card { position: relative; width: min(100%, 31rem); padding: 2.25rem 2.4rem 1.9rem; border: 1px solid rgba(190, 240, 233, .19); border-radius: .42rem; color: var(--ink); background: rgba(10, 36, 48, .94); box-shadow: 0 2.2rem 5.5rem rgba(0, 8, 13, .42), inset 0 1px rgba(255, 255, 255, .035); backdrop-filter: blur(15px); }.auth-card::before { position: absolute; top: 0; left: 0; width: 100%; height: 3px; background: linear-gradient(90deg, #5ce1ca, #9ff4df 58%, transparent); content: ""; }.auth-brand { display: inline-flex; align-items: center; gap: .7rem; color: #fff; font-family: "Palatino Linotype", "Noto Serif SC", serif; font-size: 1.18rem; font-weight: 700; text-decoration: none; }.auth-brand:hover { color: #b9f8eb; }.auth-step { display: flex; align-items: center; gap: .55rem; margin: 2.1rem 0 1rem; color: #70d8c7; font-family: "Courier New", monospace; font-size: .68rem; font-weight: 700; letter-spacing: .1em; }.auth-step i { width: 1.5rem; height: 1px; background: #4ba99a; }.auth-heading h1 { margin: 0; color: #fff; font-size: 2rem; letter-spacing: -.05em; }.auth-heading > p:last-child { margin: .65rem 0 1.6rem; color: var(--muted); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .88rem; line-height: 1.75; }.auth-card .login-eyebrow { margin-bottom: .75rem; }.auth-card .login-field { margin-bottom: 1.15rem; }.auth-card .login-submit { margin-top: .25rem; }.auth-back-link { margin: 1.35rem 0 0; text-align: center; }.auth-back-link a { color: #8fb9b4; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .78rem; text-decoration: none; }.auth-back-link a:hover { color: var(--teal); }.auth-back-link i { margin-right: .35rem; }.auth-field-feedback { min-height: 1rem; margin: .42rem 0 0; color: #ffad9a; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .73rem; }@media (max-width: 575.98px) { .login-shell { align-items: flex-start; padding: 1rem 0; }.login-card-body { padding: 2.15rem 1.35rem; }.login-options { flex-direction: column; }.login-introduction-copy { margin-top: 2rem; }.auth-shell { align-items: center; padding: 1rem; }.auth-card { padding: 1.8rem 1.35rem 1.55rem; } }@media (prefers-reduced-motion: no-preference) { .login-card { animation: login-card-enter .7s ease-out both; } @keyframes login-card-enter { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } } }