.login{min-height:100vh;padding:var(--gap-xl) var(--gap-lg);background:var(--sky-deep);color:var(--on-deep);flex-direction:column;display:flex;position:relative;overflow:hidden}.login-contours{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.login-top,.login-body,.login-legal{width:100%;max-width:1200px;margin:0 auto;position:relative}.login-top{align-items:center;gap:var(--gap);display:flex}.login-top-sub{font-size:var(--text-sm);color:var(--on-deep-muted)}.login-body{justify-content:space-between;align-items:center;gap:var(--gap-2xl);padding:var(--gap-2xl) 0;flex-wrap:wrap;flex:1;display:flex}.login-lede{max-width:520px;font-family:var(--disp);font-weight:600;font-size:var(--text-display);line-height:var(--leading-tight);letter-spacing:-.015em;color:var(--surface);flex:380px}.login-card{padding:var(--gap-xl) var(--gap-xl) var(--gap-lg);background:var(--surface);color:var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-overlay);flex:0 400px}.login-legal{font-size:var(--text-xs);line-height:var(--leading-relaxed);color:var(--on-deep-muted)}.login-head h1{font-family:var(--disp);font-weight:600;font-size:var(--text-2xl);letter-spacing:-.01em}.login-head p{margin-top:var(--gap-xs);font-size:var(--text-md);color:var(--muted)}.login-form{margin-top:var(--gap-lg)}.login-error{margin-bottom:var(--gap-md);padding:var(--gap-sm) var(--gap);border-left:3px solid var(--danger);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--danger-soft);font-size:var(--text-sm);color:var(--danger-strong)}.login-form .field+.field{margin-top:var(--gap-md)}.login-form .field label{margin-bottom:var(--gap-tight);font-size:var(--text-xs);letter-spacing:.015em;color:var(--muted);font-weight:500;display:block}.login-form .field input{width:100%;padding:var(--gap-sm) var(--gap);font-size:var(--text-md);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);transition:border-color .12s}.login-form .field input:hover:not(:disabled){border-color:var(--line-strong)}.login-form .field input:focus-visible{border-color:var(--sky);outline:2px solid var(--sky);outline-offset:-1px}.login-form .field input[aria-invalid=true]{border-color:var(--danger)}.login-form .field input:disabled{background:var(--workspace);color:var(--muted)}.password-wrap{position:relative}.password-toggle{padding:var(--gap-xs) var(--gap-sm);border-radius:var(--radius-sm);font-size:var(--text-2xs);letter-spacing:.015em;color:var(--muted);background:0 0;border:none;font-weight:500;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.password-toggle:hover:not(:disabled){color:var(--sky);background:var(--sky-soft)}.password-toggle:disabled{color:var(--line)}.login-form .field:has(.password-toggle) input{padding-right:calc(var(--gap-2xl) + var(--gap-md))}.login .btn{width:100%;margin-top:var(--gap-lg);padding:var(--gap) var(--gap-md);border:1px solid var(--sky);border-radius:var(--radius);background:var(--sky);color:var(--surface);font-family:var(--disp);font-weight:500;font-size:var(--text-md);transition:filter .1s}.login .btn:hover:not(:disabled){filter:brightness(1.07)}.login .btn:disabled{opacity:.55;cursor:default}.login .btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.login-foot{margin-top:var(--gap-md);text-align:center;font-size:var(--text-xs);color:var(--muted)}@media (max-width:860px){.login{padding:var(--gap-lg) var(--gap-md)}.login-body{padding:var(--gap-xl) 0;gap:var(--gap-lg)}.login-lede{font-size:var(--text-2xl)}.login-card{padding:var(--gap-lg) var(--gap-lg) var(--gap-lg);flex-basis:100%}}
