/* Public account screens share the homepage's navy and mint palette. */
.auth-page{--auth-mint:#a9edc9;--auth-muted:#b1bdd0;--auth-line:#293249;margin:0;background:#0a0e27;color:#f4f7fa;font:16px/1.6 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;min-height:100vh;display:flex;flex-direction:column}
.auth-page *{box-sizing:border-box}.auth-page h1,.auth-page h2,.auth-page p{margin:0}.auth-page a{color:var(--auth-mint);text-underline-offset:4px}.auth-page button,.auth-page input{font:inherit}.auth-page a:focus-visible,.auth-page button:focus-visible,.auth-page input:focus-visible{outline:3px solid var(--auth-mint);outline-offset:4px}.auth-page [hidden]{display:none!important}
.auth-topbar,.auth-bottom{width:min(1120px,calc(100% - 64px));margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.auth-topbar{min-height:92px;border-bottom:1px solid var(--auth-line)}.auth-page .auth-logo{display:inline-flex;align-items:center;gap:9px;color:#f4f7fa;font-size:24px;font-weight:750;letter-spacing:-1px;text-decoration:none}.auth-logo>span:not(.auth-logo-mark){color:var(--auth-mint)}.auth-logo-mark{display:grid;place-items:center;background:var(--auth-mint);color:#102b22;width:32px;height:32px;border-radius:9px;margin-right:9px;font-size:27px;line-height:1}.auth-logo-dot{margin-left:1px}.auth-page .auth-back{color:var(--auth-muted);font-size:13px;text-decoration:none;display:flex;align-items:center;gap:12px;padding:10px 0}.auth-page .auth-back:hover{color:var(--auth-mint)}
.auth-layout{width:min(1040px,calc(100% - 64px));margin:auto;display:grid;grid-template-columns:1fr 440px;align-items:center;gap:80px;padding:64px 0}.auth-intro{max-width:490px}.auth-eyebrow{color:var(--auth-mint);font-size:11px;font-weight:700;letter-spacing:1.8px;margin-bottom:19px!important}.auth-intro h2{font-size:clamp(32px,3.4vw,44px);line-height:1.16;letter-spacing:-1.5px;font-weight:700;margin-bottom:23px}.auth-intro>p:not(.auth-eyebrow){color:var(--auth-muted);font-size:16px;max-width:430px}.auth-steps{list-style:none;margin:30px 0 25px;padding:0}.auth-steps li{display:flex;gap:18px;padding:18px 0;border-top:1px solid var(--auth-line)}.auth-steps li>span{font-size:11px;color:var(--auth-mint);padding-top:4px}.auth-steps strong{font-size:14px;font-weight:650}.auth-steps p{font-size:13px;color:var(--auth-muted);margin-top:4px}.auth-page .auth-browse{font-size:14px;text-decoration:none;padding:9px 0;display:inline-flex;align-items:center;gap:20px}.auth-browse:hover{text-decoration:underline}
.auth-card{padding:34px;background:#10182e;border:1px solid var(--auth-line);border-radius:16px;min-width:0}.auth-header{margin-bottom:27px}.auth-header h1{font-size:28px;line-height:1.2;letter-spacing:-.8px;font-weight:700;margin-bottom:12px}.auth-header p{font-size:14px;color:var(--auth-muted)}.form-group{margin-bottom:18px}.form-group label{display:block;font-size:13px;font-weight:600;color:#dbe5f1;margin-bottom:8px}.form-control{width:100%;min-height:49px;padding:12px 14px;border:1px solid #41506a;border-radius:8px;background:#0c1429;color:#f4f7fa;min-width:0;transition:border-color .15s}.form-control:hover{border-color:#75869f}.form-control:focus{border-color:var(--auth-mint)}.password-toggle{position:relative}.password-toggle:has(.password-toggle-button:not([hidden])) input{padding-right:78px}.password-toggle-button{position:absolute;right:5px;top:4px;bottom:4px;min-width:65px;padding:7px;border:0;background:transparent;color:var(--auth-mint);font-size:12px!important;font-weight:600!important;cursor:pointer;border-radius:5px}.password-toggle-button:hover{background:#1b2e38}.auth-page .form-hint{font-size:12px;color:var(--auth-muted);line-height:1.6;margin:-7px 0 20px}.auth-submit{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;border:1px solid var(--auth-mint);background:var(--auth-mint);color:#102b22;min-height:49px;padding:12px 17px;border-radius:8px;cursor:pointer;font-size:14px!important;font-weight:700!important}.auth-submit:hover{background:#c3f7da}.auth-submit:disabled{opacity:.65;cursor:wait}.auth-divider{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--auth-muted);margin:23px 0 18px;text-align:center}.auth-divider:before,.auth-divider:after{content:'';height:1px;background:var(--auth-line);flex:1}.auth-google{display:flex;justify-content:center;min-height:44px;max-width:100%}.auth-page .auth-footer{font-size:13px;color:var(--auth-muted);margin-top:26px;padding-top:23px;border-top:1px solid var(--auth-line);text-align:center}.auth-footer a{display:inline-block;margin-left:5px;padding-block:4px;font-weight:600}.alert{padding:13px 15px;border:1px solid;border-radius:8px;font-size:14px;margin-bottom:22px;overflow-wrap:anywhere}.alert-danger{background:#2f1d2b;color:#ffc7c7;border-color:#734652}.alert-success{background:#193a30;color:#bcf3d6;border-color:#446b5a}.auth-bottom{padding:23px 0;border-top:1px solid var(--auth-line);font-size:12px;color:var(--auth-muted)}.auth-bottom a{padding-block:6px;text-decoration:none}.auth-bottom a:hover{text-decoration:underline}.auth-skip-link{position:absolute;top:8px;left:16px;transform:translateY(-150%);background:#102b22;border:1px solid var(--auth-mint);padding:9px 15px;z-index:10;border-radius:5px}.auth-skip-link:focus{transform:none}
@media(max-width:950px){.auth-layout{gap:40px;grid-template-columns:1fr 400px}.auth-card{padding:28px}.auth-intro h2{font-size:35px}}
@media(max-width:760px){.auth-layout{display:flex;flex-direction:column;align-items:stretch;max-width:480px;width:calc(100% - 40px);padding:35px 0;gap:35px}.auth-card{order:-1}.auth-intro h2{font-size:29px}.auth-intro{padding-inline:8px}.auth-steps{margin:23px 0 15px}.auth-topbar,.auth-bottom{width:calc(100% - 40px)}.auth-topbar{min-height:77px}.auth-page .auth-logo{font-size:21px}.auth-page .auth-back{font-size:12px;gap:5px}.auth-logo-mark{width:28px;height:28px;font-size:24px}.auth-header h1{font-size:27px}}
@media(max-width:380px){.auth-card{padding:24px 19px}.auth-header h1{font-size:25px}.auth-page .auth-logo{font-size:19px}.auth-topbar{gap:12px}.auth-bottom{flex-wrap:wrap;gap:3px}.auth-page .auth-back{font-size:11px}}
@media(prefers-reduced-motion:reduce){.auth-page *{transition:none!important;scroll-behavior:auto!important}}
