.auth{position:relative;isolation:isolate;overflow:hidden;min-height:calc(100svh - 72px);display:grid;grid-template-columns:minmax(0,100%);align-content:center;background:radial-gradient(112% 84% at 4% 108%,color-mix(in srgb,var(--color-primary-muted) 34%,transparent) 0%,transparent 52%),radial-gradient(86% 68% at 96% -14%,color-mix(in srgb,var(--color-forest) 52%,transparent) 0%,transparent 58%),radial-gradient(130% 110% at 50% 46%,transparent 18%,color-mix(in srgb,var(--color-surface-void) 78%,transparent) 100%),var(--color-surface-void);padding:calc(72px + clamp(32px,8vh,96px)) 24px clamp(48px,10vh,120px)}.auth:after{content:"";position:absolute;inset:auto 0 0;height:2px;z-index:-1;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--color-primary) 80%,transparent) 20%,color-mix(in srgb,var(--color-gold) 62%,transparent) 52%,transparent 86%)}.auth-split{gap:clamp(28px,5vh,56px)}.auth-brand{display:grid;justify-items:center;justify-self:center;align-content:center;gap:var(--spacing-md);text-align:center;max-width:min(460px,100%)}.auth-emblem{width:clamp(76px,13vw,136px);height:auto;display:block;filter:drop-shadow(0 0 clamp(18px,3vw,44px) color-mix(in srgb,var(--color-primary-muted) 60%,transparent))}.auth-wordmark{width:clamp(190px,22vw,272px);height:auto;display:none}.auth-rule{width:64px;height:1px;background:linear-gradient(90deg,var(--color-gold),transparent)}.auth-brand .foot{margin-top:0}.auth-panels{display:grid;justify-self:center;width:min(460px,100%)}@media(min-width:980px){.auth-split{grid-template-columns:minmax(0,420px) minmax(0,460px);justify-content:center;align-content:center;align-items:center;column-gap:clamp(48px,7vw,104px)}.auth-brand{max-width:100%}.auth-wordmark{display:block}.auth-panels{justify-self:start}}.auth .card{position:relative;width:min(460px,100%);justify-self:center;display:grid;gap:var(--spacing-sm);background:linear-gradient(180deg,color-mix(in srgb,var(--color-surface-elevated) 72%,var(--color-surface-deep)) 0%,var(--color-surface-deep) 58%);border:1px solid var(--color-surface-border);border-radius:var(--radius-lg);padding:clamp(28px,5vw,44px);box-shadow:0 32px 70px -44px color-mix(in srgb,var(--color-surface-void) 96%,transparent),inset 0 1px color-mix(in srgb,var(--color-ivory) 10%,transparent)}.auth .card.wide{width:min(560px,100%)}.auth .code{font-family:var(--font-mono);font-size:var(--type-label);letter-spacing:.3em;text-transform:uppercase;color:var(--color-gold)}.auth h1,.auth .h1{font-family:var(--font-display-section);font-size:var(--type-section);color:var(--color-ivory);line-height:1.1}.auth .line{color:var(--color-text-secondary);font-size:var(--type-lede);line-height:1.5}.auth .line strong{color:var(--color-ivory)}.auth .path{display:grid;gap:var(--spacing-sm);margin:var(--spacing-xs) 0 0;padding:0;list-style:none;counter-reset:auth-step}.auth .path li{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:baseline;gap:12px;color:var(--color-text-secondary);font-size:var(--text-body-md);line-height:1.5}.auth .path li:before{counter-increment:auth-step;content:counter(auth-step);font-family:var(--font-mono);font-size:var(--type-numeral-sub);color:var(--color-primary-bright);text-align:right}.auth form{display:grid;gap:8px}.auth label{color:var(--color-ivory);font-size:var(--text-body-sm);margin-top:var(--spacing-xs);min-height:24px}.auth input[type=email],.auth input[type=password],.auth input[type=text]{background:color-mix(in srgb,var(--color-surface-void) 72%,var(--color-surface-base));color:var(--color-ivory);border:1px solid var(--color-surface-border);border-radius:var(--radius-sm);padding:13px 14px;font-size:var(--text-body-md);min-height:48px;width:100%;transition:border-color .2s ease-out,background .2s ease-out}.auth input::placeholder{color:var(--color-text-muted)}.auth input[type=email]:hover,.auth input[type=password]:hover,.auth input[type=text]:hover{border-color:color-mix(in srgb,var(--color-gold) 45%,var(--color-surface-border))}.auth input.otp{font-family:var(--font-mono);font-size:1.6rem;letter-spacing:.35em;text-align:center}.auth input:focus-visible,.auth button:focus-visible,.auth a:focus-visible{outline:2px solid var(--color-gold);outline-offset:3px}.auth .field{position:relative;display:block}.auth .field input{padding-right:76px}.auth .peek{position:absolute;top:50%;right:6px;transform:translateY(-50%);min-height:36px;padding:0 10px;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-text-secondary);font-family:var(--font-body-md);font-size:var(--text-body-sm);cursor:pointer;transition:color .2s ease-out,border-color .2s ease-out}.auth .peek:hover{color:var(--color-gold);border-color:color-mix(in srgb,var(--color-gold) 40%,transparent)}.auth .check{display:flex;align-items:center;gap:10px;color:var(--color-text-secondary);font-size:var(--text-body-sm);margin-top:var(--spacing-xs);min-height:44px}.auth .check input{width:24px;height:24px;flex:none;accent-color:var(--color-primary)}.auth .error{color:var(--color-ivory);border-left:3px solid var(--color-error);padding-left:12px;font-size:var(--text-body-sm);line-height:1.4}.auth .ok{color:var(--color-ivory);font-size:var(--text-body-md);line-height:1.5;border-left:3px solid var(--color-gold);padding-left:14px}.auth .btn-ember{margin-top:var(--spacing-sm);display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--color-primary);color:var(--color-surface-void);border:0;cursor:pointer;padding:14px 28px;min-height:48px;border-radius:var(--radius-md);font-size:var(--text-body-sm);font-family:var(--font-body-md);transition:background .25s ease-out,box-shadow .25s ease-out}.auth .btn-ember:hover{background:var(--color-primary-bright);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-primary-bright) 60%,transparent),0 14px 34px -18px color-mix(in srgb,var(--color-primary) 80%,transparent)}.auth .btn-ember:disabled{opacity:.85;cursor:default}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth .btn-ember[data-pending]:before{content:"";width:1em;height:1em;flex:none;border-radius:50%;border:2px solid color-mix(in srgb,var(--color-surface-void) 30%,transparent);border-top-color:var(--color-surface-void);animation:auth-spin .8s linear infinite}@media(prefers-reduced-motion:reduce){.auth .btn-ember[data-pending]:before{animation:none}}.auth .quiet{background:transparent;color:var(--color-ivory);border:1px solid var(--color-surface-border);cursor:pointer;padding:12px 24px;min-height:44px;border-radius:var(--radius-md);font-size:var(--text-body-sm);font-family:var(--font-body-md);transition:border-color .25s ease-out,color .25s ease-out}.auth .quiet:hover{border-color:var(--color-gold);color:var(--color-gold)}.auth .links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:var(--spacing-xs)}.auth .links a,.auth .links button.linklike{background:none;border:0;padding:0;cursor:pointer;display:inline-flex;align-items:center;min-height:44px;color:var(--color-text-secondary);font-size:var(--text-body-sm);font-family:var(--font-body-md);text-decoration:underline;text-underline-offset:3px}.auth .links a:hover,.auth .links button.linklike:hover{color:var(--color-gold)}.auth .foot{margin-top:var(--spacing-sm);color:var(--color-text-secondary);font-size:14px;text-align:center;letter-spacing:.08em}.auth .steps{display:grid;gap:6px;margin:0;list-style:decimal;padding-left:20px;color:var(--color-text-secondary);font-size:var(--text-body-sm);line-height:1.5}.auth .qr{justify-self:center;background:var(--color-ivory-warm);padding:12px;border-radius:var(--radius-sm);line-height:0}.auth .qr svg,.auth .qr canvas{display:block;width:200px;height:200px}.auth .secret{font-family:var(--font-mono);font-size:13px;letter-spacing:.12em;color:var(--color-ivory);background:var(--color-surface-base);border:1px solid var(--color-surface-border);border-radius:var(--radius-sm);padding:10px 12px;overflow-wrap:anywhere;user-select:all}.auth .codes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.auth .codes li{font-family:var(--font-mono);font-size:15px;letter-spacing:.08em;color:var(--color-ivory);background:var(--color-surface-base);border:1px solid var(--color-surface-border);border-radius:var(--radius-sm);padding:10px 12px;text-align:center;user-select:all}.auth .status{display:inline-flex;align-items:center;gap:8px;color:var(--color-ivory);font-size:var(--text-body-sm)}.auth .status:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--color-gold)}
