/* Authentication pages have their own layout, independent of the dashboard. */
.auth-symbols{position:absolute;width:0;height:0;overflow:hidden}
.auth-page{--auth-accent:#1769f5;--auth-ink:#12213c;min-height:100svh;display:grid;grid-template-columns:minmax(360px,.94fr) minmax(480px,1.06fr);background:#fbfdff;color:var(--auth-ink);font-size:14px}
.auth-page svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.auth-page a{text-decoration:none}.auth-page a:focus-visible,.auth-page button:focus-visible{outline:3px solid #69a6ff;outline-offset:5px}
.auth-story{position:relative;isolation:isolate;background:#07152f;color:#fff;display:flex;flex-direction:column;padding:44px 52px 30px;overflow:hidden}
.auth-story:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 80% 55%,#1769f555,transparent 65%),linear-gradient(135deg,#0c214500,#040d2066)}
.auth-story:after{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(transparent,#000,transparent)}
.auth-brand{align-self:flex-start;display:inline-flex}.auth-brand img{width:188px;height:auto;object-fit:contain}
.auth-story-content{max-width:510px;width:100%;margin:auto; padding:62px 0 46px}
.auth-kicker{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.7px;font-weight:600;color:#a7b7cf;margin-bottom:26px}.auth-kicker>span{width:6px;height:6px;border-radius:50%;background:#23cdb7;box-shadow:0 0 0 4px #23cdb712}
.auth-story h2{font-size:clamp(40px,4.1vw,65px);letter-spacing:-2.9px;font-weight:600;line-height:1.12;margin:0 0 24px}.auth-story h2 em{font-style:normal;color:#23cdb7}.auth-story-content>p{max-width:365px;font-size:14px;line-height:1.9;color:#a7b7cf;margin:0}
.auth-illustration{position:relative;height:237px;margin:22px 0 16px;display:flex;align-items:center;justify-content:center}
.auth-orbit{position:absolute;width:200px;height:200px;border:1px solid #9db0ca14;border-radius:50%}.auth-orbit-two{width:280px;height:280px;border-style:dashed;opacity:.6}.auth-signal{position:absolute;left:calc(50% - 32px);top:19px;width:64px;height:64px;border:1px solid #8ab9ff30;border-radius:20px;display:grid;place-items:center;background:linear-gradient(145deg,#203c62,#102648);box-shadow:0 10px 35px #020b1c50;transform:rotate(-6deg)}.auth-signal svg{width:32px;height:32px;color:#a9d7ff;transform:rotate(6deg)}
.auth-wave{position:absolute;top:83px;left:0;right:0;background:linear-gradient(90deg,transparent,#102648aa,transparent)}.auth-wave svg{width:100%;height:100px;overflow:visible;stroke:none}.auth-wave-grid{stroke:#9db0ca10;stroke-width:1;stroke-dasharray:3 6}.auth-wave-line{stroke:#23cdb7;stroke-width:2;filter:drop-shadow(0 0 8px #23cdb74a)}.auth-illustration-label{position:absolute;bottom:15px;font-size:8px;letter-spacing:2px;color:#8299b8}.auth-floating-tag{position:absolute;right:0;bottom:51px;display:flex;gap:8px;align-items:center;border:1px solid #83b8ff26;background:#123b42;border-radius:7px;padding:10px 13px;font-size:10px;box-shadow:0 8px 20px #030c1d2e;transform:rotate(3deg);color:#d7e2f1}.auth-floating-tag>span{width:6px;height:6px;border-radius:50%;background:#71ead9}
.auth-story-note{display:flex;align-items:center;gap:10px;font-size:11px;color:#a7b7cf}.auth-story-note svg{width:17px;height:17px;color:#83b8dd}.auth-story-footer{display:flex;justify-content:space-between;gap:12px;color:#8da0bb;font-size:10px;padding-top:22px;border-top:1px solid #ffffff10}
.auth-form-side{display:flex;flex-direction:column;min-width:0;padding:38px 48px 28px}.auth-top-link{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px;font-size:11px;color:#718099;min-height:30px}.auth-top-link a{font-weight:600;color:var(--auth-accent)}.auth-top-link a span{margin-left:3px}
.auth-card{width:100%;max-width:390px;margin:auto; padding:40px 0}.auth-form-icon{width:45px;height:45px;display:grid;place-items:center;border:1px solid #dbe8ff;border-radius:13px;background:#f1f6ff;color:#1769f5;margin-bottom:26px}.auth-form-icon svg{width:21px;height:21px}.auth-eyebrow{font-size:9px;letter-spacing:1.65px;font-weight:700;color:#526f98;margin:0 0 12px}.auth-card h1{font-size:34px;font-weight:600;letter-spacing:-1.35px;line-height:1.2;margin:0}.auth-intro{font-size:12px;line-height:1.85;color:#65748b;margin:13px 0 28px;max-width:330px}
.auth-field{margin-bottom:19px}.auth-field>label{font-size:11px;font-weight:600;display:block;margin-bottom:9px;color:#30415d}.auth-input-wrap{position:relative;display:flex;align-items:center}.auth-input-wrap .auth-input-icon{position:absolute;left:14px;width:17px;height:17px;color:#8395ac;pointer-events:none}.auth-input-wrap input{width:100%;min-width:0;border:1px solid #dce4ef;border-radius:8px;background:#fff;padding:13px 43px 13px 42px;min-height:47px;color:#12213c;font:inherit;font-size:12px;transition:border-color .15s,box-shadow .15s}.auth-input-wrap input::placeholder{color:#91a0b5}.auth-input-wrap input:hover{border-color:#acc5e8}.auth-input-wrap input:focus{outline:0;border-color:#1769f5;box-shadow:0 0 0 3px #1769f51c}.auth-input-wrap input[aria-invalid=true]{border-color:#c26960}.auth-password-toggle{position:absolute;right:9px;display:grid;place-items:center;border:0;background:none;color:#7187a2;width:32px;height:32px;border-radius:5px}.auth-password-toggle[hidden]{display:none}.auth-password-toggle svg{width:17px;height:17px}.auth-password-toggle:hover,.auth-password-toggle[aria-pressed=true]{color:#1769f5;background:#edf4ff}.auth-field-help{color:#718099;font-size:10px;line-height:1.65;margin:8px 0 0}.auth-field-help ul{padding-left:16px;margin:4px 0 0}.auth-field-errors{font-size:11px;color:#a43e34;margin-top:7px}.auth-field-errors ul,.auth-error ul{margin:0;padding-left:16px}
.auth-submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;border:1px solid #1769f5;background:#1769f5;color:white;font-size:12px;font-weight:600;border-radius:8px;padding:12px 18px;box-shadow:0 3px 5px #0c214510;transition:background .15s,transform .15s;margin-top:24px}.auth-submit svg{width:17px;height:17px}.auth-submit:hover{background:#0758e8;transform:translateY(-1px)}.auth-submit:active{transform:none}
.auth-divider{display:flex;align-items:center;gap:13px;margin:27px 0 23px;font-size:9px;color:#8b9bb1;white-space:nowrap}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#e5ebf4}.auth-switch{font-size:11px;text-align:center;color:#718099;margin:22px 0 0;line-height:1.8}.auth-switch a{color:#1769f5;font-weight:600}.auth-register-note{display:flex;align-items:center;justify-content:center;gap:7px;font-size:9px;color:#718099;margin:16px 0 0}.auth-register-note svg{width:13px;height:13px}.auth-footer{display:flex;justify-content:space-between;gap:16px;font-size:9px;color:#8b9bb1;line-height:1.8}.auth-footer a{color:#65748b}.auth-error{color:#9a3e35;background:#fdf1ee;border:1px solid #efd4ce;padding:12px 14px;border-radius:8px;font-size:11px;line-height:1.6;margin-bottom:20px}
@media(min-width:1500px){.auth-story{padding-left:72px;padding-right:72px}.auth-form-side{padding-left:64px;padding-right:64px}}
@media(max-width:1050px){.auth-story{padding:32px}.auth-story h2{font-size:43px;letter-spacing:-2px}.auth-form-side{padding:28px 32px}.auth-story-content{padding-top:50px}.auth-top-link{font-size:10px}}
@media(max-width:800px){.auth-page{grid-template-columns:1fr}.auth-story{padding:25px 28px}.auth-brand img{width:154px}.auth-story-content{padding:27px 0 4px;margin:0;max-width:none}.auth-kicker{font-size:8px;margin-bottom:14px}.auth-story h2{font-size:31px;letter-spacing:-1px;margin-bottom:12px}.auth-story h2 br{display:none}.auth-story-content>p{font-size:12px;max-width:400px;line-height:1.7}.auth-illustration,.auth-story-note,.auth-story-footer{display:none}.auth-form-side{padding:18px 28px 24px}.auth-top-link{justify-content:center}.auth-card{padding:30px 0 36px;max-width:420px}.auth-form-icon{margin-bottom:20px}.auth-card h1{font-size:30px}.auth-footer{max-width:420px;width:100%;margin:0 auto}.auth-intro{max-width:none}.auth-input-wrap input{font-size:16px}}
@media(prefers-reduced-motion:reduce){.auth-page *{transition:none!important}}

/* Passwordless sign-in and first-visit onboarding. */
.auth-google{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;padding:12px;border:1px solid #dce4ef;border-radius:8px;background:#fff;color:#30415d;font:inherit;font-size:12px;font-weight:600}.auth-google:hover{background:#f1f6ff;border-color:#acc5e8}.auth-google:disabled{cursor:not-allowed;opacity:.6;background:#f7faff}.auth-google-mark{font:bold 20px Arial,sans-serif;color:#4285f4}.auth-info{padding:18px;background:#f1f6ff;border:1px solid #dbe8ff;border-radius:10px;color:#30415d;font-size:12px;line-height:1.8}.auth-info p{margin:8px 0 0;color:#65748b;font-size:11px}.auth-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.auth-field-full{grid-column:1/-1}.auth-profile-input input,.auth-profile-input select{width:100%;min-width:0;min-height:46px;padding:12px;border:1px solid #dce4ef;border-radius:8px;background:#fff;color:#12213c;font:inherit;font-size:12px}.auth-profile-input input:focus,.auth-profile-input select:focus{outline:0;border-color:#1769f5;box-shadow:0 0 0 3px #1769f51c}.auth-profile-input [aria-invalid=true]{border-color:#c26960}.auth-optional{font-weight:400;color:#718099;font-size:9px}.auth-verified{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:10px;color:#526f98;overflow-wrap:anywhere;margin:0 0 24px}.auth-verified svg{width:15px;height:15px}.auth-verified strong{word-break:break-word}.auth-form .auth-submit{margin-top:12px}@media(max-width:800px){.auth-profile-input input,.auth-profile-input select{font-size:16px}}@media(max-width:360px){.auth-profile-grid{grid-template-columns:1fr}.auth-field-full{grid-column:auto}}
