.login{min-height:100vh;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100dvh;display:grid}.login-hero{isolation:isolate;background:var(--hx-navy);color:#fff;position:relative;overflow:hidden}.login-hero:before{content:"";z-index:-1;background:radial-gradient(640px 360px at 88% -8%,#ffaa3c4d,#0000 62%),radial-gradient(480px 340px at 0 108%,#fb5a2e2e,#0000 62%);position:absolute;inset:0}.login-hero:after{content:"";background:var(--hx-solar);width:3px;position:absolute;top:0;bottom:0;right:0}.hero-arcs{opacity:.18;z-index:-1;pointer-events:none;width:82%;position:absolute;bottom:-26%;right:-22%}.hero-inner{flex-direction:column;justify-content:space-between;gap:40px;height:100%;padding:40px clamp(28px,5vw,64px);display:flex}.login-hero .brand-mark{width:52px;height:52px}.login-hero .wordmark{font-size:27px}.hero-eyebrow{letter-spacing:.3em;text-transform:uppercase;color:#ffb454;margin:0;font-size:12px;font-weight:600}.hero-title{max-width:12ch;font-family:var(--hx-font-serif);letter-spacing:-.015em;margin:16px 0 18px;font-size:clamp(38px,4.6vw,64px);font-weight:400;line-height:1.03}.hero-title span{background:var(--hx-solar);color:#0000;-webkit-background-clip:text;background-clip:text}.hero-text{color:#afc0d2;max-width:430px;margin:0;font-size:16px}.hero-foot{color:#8fa3b8;margin:0;font-size:12.5px}.login-main{background:var(--hx-bg);flex-direction:column;justify-content:center;align-items:center;padding:48px 24px 32px;display:flex}.login-card{width:min(420px,100%)}.login-eyebrow{letter-spacing:.26em;text-transform:uppercase;color:var(--hx-accent-ink);margin:0;font-size:11px;font-weight:600}.login-card h2{font-family:var(--hx-font-serif);letter-spacing:-.01em;margin:8px 0;font-size:clamp(30px,3.2vw,38px);font-weight:400;line-height:1.08}.login-lead{color:var(--hx-text-2);margin:0;font-size:14.5px}.login-lead strong{color:var(--hx-text);overflow-wrap:anywhere;font-weight:600}.login-card label{margin:26px 0 8px;font-size:13px;font-weight:600;display:block}.login-card input{width:100%;height:52px;font:500 15.5px/1 var(--hx-font-sans);color:var(--hx-text);background:var(--hx-surface);border:1px solid var(--hx-line);border-radius:14px;outline:none;padding:0 16px;transition:border-color .16s,box-shadow .16s}.login-card input::placeholder{color:var(--hx-text-2);opacity:.7}.login-card input:focus{border-color:#ff9f32cc;box-shadow:0 0 0 4px #ff9f322e}.login-card #code{text-align:center;letter-spacing:.55em;font-variant-numeric:tabular-nums;height:64px;padding:0 0 0 .55em;font-size:28px;font-weight:600}.btn-primary{background:var(--hx-solar);width:100%;height:52px;color:var(--hx-navy);font:600 15px/1 var(--hx-font-sans);letter-spacing:.01em;cursor:pointer;border:0;border-radius:14px;margin-top:16px;transition:transform .16s,filter .16s,box-shadow .16s;box-shadow:0 14px 28px -16px #fb5a2ecc}.btn-primary:hover:not(:disabled){filter:saturate(1.08)brightness(1.03);transform:translateY(-1px)}.btn-primary:disabled{opacity:.65;cursor:progress}.btn-primary:focus-visible,.link-button:focus-visible{outline:2px solid var(--hx-amber);outline-offset:3px}.login-actions{justify-content:space-between;gap:12px;margin-top:16px;display:flex}.link-button{color:var(--hx-accent-ink);font:600 13.5px/1.3 var(--hx-font-sans);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 0}.link-button:hover:not(:disabled){text-underline-offset:3px;text-decoration:underline}.link-button:disabled{color:var(--hx-text-2);cursor:default}.login-message{border:1px solid var(--hx-line);background:var(--hx-surface);color:var(--hx-text);border-radius:12px;margin:18px 0 0;padding:12px 14px;font-size:13.5px;line-height:1.5}.login-message[data-kind=error]{background:var(--hx-danger-bg);color:var(--hx-danger);border-color:#0000}.login-legal{color:var(--hx-text-2);margin:40px 0 0;font-size:12px}@media (max-width:860px){.login{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.login-hero:after{width:auto;height:3px;top:auto;left:0}.hero-inner{gap:22px;padding:22px 20px 26px}.login-hero .brand-mark{width:40px;height:40px}.login-hero .wordmark{font-size:21px}.hero-title{max-width:none;margin:10px 0 0;font-size:30px}.hero-text,.hero-foot{display:none}.hero-arcs{width:56%;bottom:-60%;right:-18%}.login-main{justify-content:flex-start;padding:30px 20px 24px}}
