.auth-canvas{position:relative;min-height:100vh;background:var(--auth-canvas);overflow:hidden}.auth-vignette{position:absolute;inset:0;background:var(--auth-vignette);pointer-events:none}.auth-content{position:relative;z-index:1;justify-content:center;min-height:100vh;padding:48px 24px}.auth-content,.auth-mark{display:flex;align-items:center}.auth-mark{justify-content:flex-start;width:110px;height:110px;margin-bottom:-18px}.auth-panel{width:400px;max-width:100%;margin:0;padding:36px;border-radius:12px;background:var(--auth-card-bg);border:1px solid var(--auth-card-border);box-shadow:none}.auth-heading{font-size:22px;font-weight:700;color:var(--auth-text-heading);letter-spacing:-.03em;line-height:1.2;margin-bottom:4px}.auth-heading,.auth-sub{font-family:var(--nexa-font-ui)}.auth-sub{font-size:13px;color:var(--auth-text-body);line-height:1.6;margin-bottom:28px}.auth-field,.auth-grid-2{margin-bottom:16px}.auth-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-row-between{justify-content:space-between;margin-bottom:20px}.auth-row-between,.remember-me{display:flex;align-items:center}.remember-me{gap:6px;cursor:pointer}.rm-box{width:13px;height:13px;border-radius:3px;background:var(--auth-checkbox-bg);border:1px solid var(--auth-border-control);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--nexa-snap) var(--nexa-ease-v2),border-color var(--nexa-snap) var(--nexa-ease-v2)}.rm-box.checked{background:var(--auth-checkbox-checked);border-color:var(--auth-checkbox-checked)}.rm-box svg{width:8px;height:8px;stroke:var(--auth-on-primary);fill:none;stroke-width:3}.rm-label{font-size:11px}.auth-footer,.rm-label{color:var(--auth-text-body);font-family:var(--nexa-font-ui)}.auth-footer{margin-top:20px;padding-top:20px;border-top:1px solid var(--auth-border-footer);text-align:center;font-size:12px}.auth-link{font-size:12px;color:var(--auth-link);text-decoration:none;transition:color var(--nexa-snap) var(--nexa-ease-v2);font-family:var(--nexa-font-ui)}.auth-link:hover{color:var(--auth-link-hover)}.auth-link-mono{font-family:var(--nexa-font-mono);font-size:10px;color:var(--auth-link);text-decoration:none;text-transform:uppercase;letter-spacing:.1em;display:inline-flex;align-items:center;gap:5px;transition:color var(--nexa-snap) var(--nexa-ease-v2);background:none;border:none;padding:0;cursor:pointer}.auth-link-mono:hover{color:var(--auth-link-hover)}.auth-link-mono svg{width:9px;height:9px;stroke:currentColor;fill:none;stroke-width:2}.verified-notice{padding:8px 12px;border-radius:6px;background:var(--lp-success-a05);border:1px solid var(--lp-success-a18);display:flex;align-items:center;gap:8px;font-size:12px;color:var(--lp-success-a80);margin-bottom:24px;font-family:var(--nexa-font-ui)}.verified-notice svg{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:2.5;flex-shrink:0}.v2-label{display:block;font-size:11px;font-weight:500;color:var(--auth-text-label);margin-bottom:6px;letter-spacing:.01em}.v2-input,.v2-label{font-family:var(--nexa-font-ui)}.v2-input{width:100%;padding:9px 12px;background:var(--auth-input-bg);border:1px solid var(--auth-card-border);border-radius:6px;color:var(--auth-text-heading);font-size:13px;outline:none;transition:border-color var(--nexa-snap) var(--nexa-ease-v2)}.v2-input:focus{border-color:var(--auth-focus-ring)}.v2-input::-moz-placeholder{color:var(--auth-text-placeholder)}.v2-input::placeholder{color:var(--auth-text-placeholder)}.v2-input.input-error{border-color:var(--nexa-danger-35)}.btn-primary{width:100%;padding:10px;border-radius:6px;background:var(--auth-text-heading);border:none;font-family:var(--nexa-font-ui);font-size:13px;font-weight:600;color:var(--auth-on-primary);cursor:pointer;letter-spacing:-.01em;transition:opacity var(--nexa-snap) var(--nexa-ease-v2);display:flex;align-items:center;justify-content:center;gap:7px}.btn-primary:hover{opacity:.84}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.error-bar{padding:9px 12px;border-radius:6px;background:var(--nexa-danger-07);border:1px solid var(--nexa-danger-35);display:flex;align-items:center;gap:8px;font-size:12px;color:var(--nexa-danger-70);font-family:var(--nexa-font-ui)}@keyframes auth-spin{to{transform:rotate(1turn)}}.auth-spinner{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--auth-border-control);border-top-color:var(--auth-accent);animation:auth-spin .7s linear infinite;flex-shrink:0}.auth-spinner--sm{width:13px;height:13px}.auth-state{flex-direction:column;text-align:center;gap:12px;padding:12px 0}.auth-state,.auth-state-icon{display:flex;align-items:center}.auth-state-icon{width:40px;height:40px;border-radius:8px;background:var(--auth-checkbox-bg);border:1px solid var(--auth-card-border);justify-content:center;margin-bottom:4px}.auth-state-icon.success{background:var(--lp-success-a05);border-color:var(--lp-success-a20)}.auth-state-icon.error{background:var(--nexa-danger-07);border-color:var(--nexa-danger-35)}.auth-state-title{font-size:18px;font-weight:600;color:var(--auth-text-heading);letter-spacing:-.02em;font-family:var(--nexa-font-ui)}.auth-state-sub{font-size:13px;color:var(--auth-text-body);max-width:280px;line-height:1.7;font-family:var(--nexa-font-ui)}.auth-state-meta{font-family:var(--nexa-font-mono);font-size:10px;color:var(--auth-text-meta);display:flex;align-items:center;gap:6px}.type-toggle{display:flex;gap:8px;margin-bottom:24px}.type-btn{flex:1;padding:10px 14px;border-radius:6px;border:1px solid var(--auth-card-border);background:var(--auth-canvas);cursor:pointer;transition:background var(--nexa-move) var(--nexa-ease-v2),border-color var(--nexa-move) var(--nexa-ease-v2);display:flex;flex-direction:column;gap:3px;text-align:left}.type-btn:hover{background:var(--auth-border-footer);border-color:var(--auth-border-control)}.type-btn.active{background:var(--lp-t900);border-color:var(--lp-t800)}.type-btn-tag{font-family:var(--nexa-font-mono);font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:var(--auth-text-body);display:flex;align-items:center;gap:5px}.type-btn.active .type-btn-tag{color:var(--lp-t500)}.type-dot{width:4px;height:4px;border-radius:50%;background:var(--auth-text-meta);flex-shrink:0}.type-btn.active .type-dot{background:var(--lp-t500)}.type-btn-label{font-size:13px;font-weight:500;color:var(--auth-text-muted);font-family:var(--nexa-font-ui)}.type-btn.active .type-btn-label{color:var(--auth-text-heading)}.pw-strength{margin-top:8px}.pw-strength-bar{display:flex;gap:3px;margin-bottom:5px}.pw-seg{flex:1;height:2px;border-radius:2px;background:var(--auth-border-seg);transition:background var(--nexa-move) var(--nexa-ease-v2)}.pw-seg.weak{background:var(--auth-meter-danger)}.pw-seg.ok{background:var(--auth-meter-warning)}.pw-seg.strong{background:var(--auth-meter-success)}.pw-strength-label{font-family:var(--nexa-font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--auth-text-body)}.pw-strength-label.weak{color:var(--auth-meter-danger)}.pw-strength-label.ok{color:var(--auth-meter-warning)}.pw-strength-label.strong{color:var(--auth-meter-success)}.pw-match{font-size:11px;margin-top:4px;display:flex;align-items:center;gap:5px;font-family:var(--nexa-font-ui)}.pw-match.ok{color:var(--lp-success-a80)}.pw-match.fail{color:var(--nexa-danger-70)}.pw-match svg{width:10px;height:10px;stroke:currentColor;fill:none;stroke-width:2.5}.domain-hint{padding:8px 12px;border-radius:6px;background:var(--lp-t900);border:1px solid var(--lp-t800);display:flex;align-items:flex-start;gap:8px;font-size:12px;color:var(--lp-t400);line-height:1.6;margin-top:6px;font-family:var(--nexa-font-ui)}.domain-hint svg{width:11px;height:11px;stroke:var(--lp-t500);fill:none;stroke-width:2;flex-shrink:0;margin-top:2px}.domain-hint b{color:var(--lp-t300);font-weight:500}.auth-footer-sep{margin:0 8px;opacity:.3}.btn-ghost{width:100%;padding:10px;border-radius:6px;background:transparent;border:1px solid var(--auth-card-border);font-family:var(--nexa-font-ui);font-size:13px;color:var(--auth-text-body);cursor:pointer;transition:border-color var(--nexa-snap) var(--nexa-ease-v2),color var(--nexa-snap) var(--nexa-ease-v2);display:flex;align-items:center;justify-content:center;gap:7px}.btn-ghost:hover{border-color:var(--auth-border-control);color:var(--auth-text-muted)}.btn-ghost:disabled{opacity:.4;cursor:not-allowed}.auth-hr{height:1px;background:var(--auth-border-footer);margin:20px 0}.auth-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;font-family:var(--nexa-font-mono);font-size:10px;color:var(--auth-text-body);letter-spacing:.06em;text-transform:uppercase}.auth-sub-highlight{color:var(--auth-text-muted);font-weight:500}.auth-state-icon.success svg{stroke:var(--lp-success-a80);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.auth-state-icon.error svg{stroke:var(--nexa-danger-70);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.token-section{margin-bottom:20px}.token-label{font-family:var(--nexa-font-mono);font-size:9px;color:var(--auth-link);text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px;display:flex;align-items:center;gap:8px}.token-label:after{content:"";flex:1;height:1px;background:var(--auth-border-footer)}.v2-input.mono-input{font-family:var(--nexa-font-mono);font-size:11px;text-align:center;letter-spacing:.06em}.token-row{display:flex;gap:8px}.token-row .v2-input{flex:1}.token-row .btn-primary{width:auto;padding:9px 16px;font-size:12px;white-space:nowrap}