.auth-shell{background:var(--bg);width:100vw;min-height:100vh;color:var(--text);font-family:var(--font-inter), "Inter", system-ui, sans-serif;justify-content:center;align-items:center;display:flex}.auth-top-bar{border-bottom:1px solid var(--border-1);background:var(--bg);z-index:10;justify-content:space-between;align-items:center;height:50px;padding:0 28px;display:flex;position:fixed;top:0;left:0;right:0}.auth-top-brand{font-family:var(--font-geist), var(--font-inter), sans-serif;letter-spacing:-.02em;color:var(--text);align-items:center;gap:9px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.auth-top-tag{font-family:var(--font-geist-mono), monospace;color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.auth-right{flex:1;justify-content:center;align-items:center;padding:32px;display:flex;overflow-y:auto}.auth-form-box{width:100%;max-width:380px}.auth-form-title{font-family:var(--font-geist), var(--font-inter), sans-serif;letter-spacing:-.03em;color:var(--text);margin-bottom:4px;font-size:22px;font-weight:700;line-height:1.2}.auth-form-sub{color:var(--text-muted);margin-bottom:24px;font-size:13px;line-height:1.5}.field{margin-bottom:14px}.field-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);font-size:11px;font-weight:600;font-family:var(--font-inter), sans-serif;margin-bottom:6px;display:block}.field-input{background:var(--surface);border:1px solid var(--border-2);width:100%;color:var(--text);font-size:13px;font-family:var(--font-inter), sans-serif;border-radius:8px;outline:none;padding:10px 12px;transition:border-color .15s}.field-input:focus{border-color:var(--brand)}.field-input::placeholder{color:var(--text-faint)}.field-input[readonly],.field-input:read-only{color:var(--text-muted);cursor:default;background:var(--bg-2)}.field-row{gap:10px;display:flex}.field-row .field{flex:1}.btn-primary{background:var(--brand);width:100%;color:var(--brand-ink);letter-spacing:-.01em;cursor:pointer;font-size:13px;font-weight:700;font-family:var(--font-inter), sans-serif;border:none;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:11px;transition:background .15s;display:flex}.btn-primary:hover:not(:disabled){background:var(--brand-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--surface);width:100%;color:var(--text-muted);border:1px solid var(--border-2);cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font-inter), sans-serif;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:10px;transition:all .15s;display:flex}.btn-secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-3);color:var(--text)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.auth-divider{color:var(--text-faint);align-items:center;gap:12px;margin:16px 0;font-size:11px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-2);flex:1;height:1px}.auth-link{text-align:center;color:var(--text-dim);margin-top:16px;font-size:12px}.auth-link a{color:var(--brand);cursor:pointer;font-weight:600;text-decoration:none}.auth-link a:hover{text-decoration:underline}.auth-forgot-row{justify-content:flex-end;margin-top:-4px;margin-bottom:18px;display:flex}.auth-forgot-link{color:var(--brand);cursor:pointer;font-size:12px;font-weight:600;text-decoration:none}.auth-forgot-link:hover{text-decoration:underline}.verified-badge-wrap{justify-content:center;margin-bottom:18px;display:flex}.verified-badge{background:var(--green-dim);border:1px solid color-mix(in oklab, var(--green) 18%, transparent);color:var(--green);border-radius:99px;justify-content:center;align-items:center;gap:6px;max-width:100%;margin-bottom:0;padding:8px 14px;font-size:11px;font-weight:600;display:inline-flex}.password-wrap{position:relative}.password-wrap .field-input{padding-right:40px}.pw-toggle{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;font-size:13px;display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.pw-toggle:hover{color:var(--text)}.field-hint{color:var(--text-dim);margin-top:5px;font-size:11px}.field-error{color:var(--red);margin-top:5px;font-size:11px}.auth-banner{border-radius:8px;align-items:flex-start;gap:8px;margin-bottom:14px;padding:10px 12px;font-size:12px;font-weight:500;line-height:1.5;display:flex}.auth-banner.error{background:var(--red-dim);border:1px solid color-mix(in oklab, var(--red) 20%, transparent);color:var(--red)}.auth-banner.warn{background:var(--amber-dim);border:1px solid color-mix(in oklab, var(--amber) 20%, transparent);color:var(--amber)}.auth-banner.success{background:var(--green-dim);border:1px solid color-mix(in oklab, var(--green) 20%, transparent);color:var(--green)}.auth-banner code{font-family:var(--font-geist-mono), monospace;background:color-mix(in oklab, var(--text) 6%, transparent);border-radius:3px;padding:1px 4px;font-size:11px}.logo-mark{background:linear-gradient(135deg, var(--brand), var(--brand-hover));width:28px;height:28px;box-shadow:0 2px 10px color-mix(in oklab, var(--brand) 35%, transparent);border-radius:8px;flex-shrink:0;place-items:center;display:grid;position:relative;overflow:hidden}.logo-mark:after{content:"";background:color-mix(in oklab, var(--text) 72%, var(--bg));clip-path:polygon(0 100%,0 50%,42% 50%,42% 18%,100% 18%,100% 100%);border-radius:2px;position:absolute;inset:5px}.auth-form-logo{align-items:center;gap:9px;margin-bottom:28px;display:flex}.auth-success{text-align:center;flex-direction:column;align-items:center;gap:18px;padding:8px 0 4px;display:flex}.auth-success-icon{background:var(--green-dim);border:1px solid color-mix(in oklab, var(--green) 18%, transparent);width:56px;height:56px;color:var(--green);border-radius:14px;place-items:center;display:grid}.auth-success-icon--error{background:var(--red-dim);border-color:color-mix(in oklab, var(--red) 18%, transparent);color:var(--red);margin-bottom:18px}.auth-success-title{font-family:var(--font-geist), var(--font-inter), sans-serif;letter-spacing:-.02em;color:var(--text);font-size:20px;font-weight:700}.auth-success-sub{color:var(--text-muted);max-width:280px;font-size:13px;line-height:1.5}.auth-success-sub strong{color:var(--text-2);font-weight:600}.auth-link-btn{color:var(--text-dim);cursor:pointer;font-size:12px;font-weight:600;font-family:var(--font-inter), sans-serif;background:0 0;border:none;border-radius:6px;padding:4px 8px}.auth-link-btn:hover{color:var(--text)}.auth-link-btn:disabled{opacity:.5;cursor:not-allowed}
