.login-page{background:var(--surface);grid-template-columns:1.05fr 1fr;min-height:100dvh;display:grid}.login-aside{background:var(--navy-2);color:var(--on-navy);padding:48px var(--gutter);flex-direction:column;justify-content:space-between;gap:40px;display:flex;position:relative;overflow:hidden}.login-aside:before{content:"";pointer-events:none;background-image:radial-gradient(#88aeac20 .7px,#0000 .7px);background-size:18px 18px;position:absolute;inset:0}.login-aside>*{position:relative}.login-aside h2{color:var(--on-navy-strong);letter-spacing:-1.6px;margin:18px 0;font-size:clamp(30px,3.2vw,46px);line-height:1.1}.login-aside p{max-width:46ch}.login-aside .eyebrow{color:#8291b3}.login-points{gap:10px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.login-points li{align-items:center;gap:10px;display:flex}.login-main{place-items:center;padding:48px 24px;display:grid}.login-card{width:min(420px,100%)}.login-card .login-title{letter-spacing:-.8px;margin:14px 0 8px;font-size:28px}.login-card>p strong{color:var(--ink);overflow-wrap:anywhere}.code-input{letter-spacing:8px;text-align:center;font-family:var(--font-mono)!important;font-size:24px!important}.dev-login{border-radius:var(--radius);color:var(--ink-soft);border:1px dashed #cdd4e2;margin-top:22px;padding:14px;font-size:13px}.dev-login summary{cursor:pointer}.dev-login form{margin-top:14px}.login-card>p{color:var(--ink-soft);margin-bottom:26px;font-size:15px}.field{gap:7px;margin-bottom:16px;display:grid}.field label{color:#33415f;font-size:13px;font-weight:550}.field input{font:inherit;border-radius:var(--radius);color:var(--ink);background:#fff;border:1px solid #cdd4e2;padding:12px 13px;font-size:15px}.field input:focus-visible{outline:2px solid var(--ring);outline-offset:1px;border-color:var(--ring)}.form-error{color:#7d261e;border-radius:var(--radius);background:#f8e6e3;border:1px solid #ecc5bf;margin-bottom:16px;padding:11px 13px;font-size:14px}.login-card .fineprint{margin-top:18px}.login-back{margin-top:22px}@media (max-width:860px){.login-page{grid-template-columns:1fr}.login-aside{padding:32px 24px}.login-points{display:none}.login-main{place-items:start center;padding:32px 20px 48px}}
