.auth-page{--auth-bg:#f6f7f8;--auth-surface:#fff;--auth-line:#e2e6e9;--auth-ink:#20252b;--auth-muted:#646d76;--auth-accent:#236556;--auth-danger:#a33a2b;background:var(--auth-bg);min-height:100dvh;color:var(--auth-ink);flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;font-family:system-ui,Microsoft YaHei,sans-serif;display:flex}.auth-page,.auth-page *{box-sizing:border-box}.auth-page .auth-card{border:1px solid var(--auth-line);background:var(--auth-surface);border-radius:12px;flex-shrink:0;width:100%;max-width:464px;margin:auto;padding:32px;box-shadow:0 4px 24px #20252b06,0 1px 3px #20252b04}.auth-brand{margin-bottom:32px}.auth-brand .site-brand{color:var(--auth-accent);align-items:center;gap:12px;display:inline-flex}.auth-brand img{-o-object-fit:contain;object-fit:contain;width:52px;height:52px;display:block}.auth-brand .site-brand-name{font-size:17px;font-weight:600}.auth-header h1{color:var(--auth-ink);letter-spacing:-.4px;margin:0;font-size:24px;font-weight:600;line-height:1.4}.auth-header p{color:var(--auth-muted);margin:8px 0 0;font-size:14px;line-height:1.65}.auth-form{gap:20px;margin-top:28px;display:grid}.auth-form [data-slot=field]{gap:8px;min-width:0;display:grid}.auth-form label{color:var(--auth-ink);font-size:14px;font-weight:500;line-height:20px}.auth-form input{border:1px solid var(--auth-line);width:100%;min-width:0;height:44px;color:var(--auth-ink);font:inherit;box-shadow:none;background:#fff;border-radius:6px;outline:none;padding:10px 12px;font-size:15px;line-height:22px;transition:border-color .12s,box-shadow .12s;display:block}.auth-form input::placeholder{color:#818991}.auth-form input:focus{border-color:var(--auth-accent);box-shadow:0 0 0 3px #23655614}.auth-password{min-width:0;position:relative}.auth-password input{padding-right:52px}.auth-form .auth-password-toggle{width:44px;height:44px;color:var(--auth-muted);box-shadow:none;background:0 0;border:0;border-radius:6px;padding:0;position:absolute;top:0;right:0}.auth-form .auth-password-toggle:hover{color:var(--auth-accent);background:#f0f4f2}.auth-form .auth-password-toggle:focus-visible{outline:2px solid var(--auth-accent);outline-offset:-4px;box-shadow:none}.auth-form .auth-submit{background:var(--auth-accent);color:#fff;width:100%;height:44px;min-height:44px;font:inherit;box-shadow:none;border:0;border-radius:6px;padding:10px 16px;font-size:15px;font-weight:600}.auth-form .auth-submit:hover:not(:disabled){opacity:1;background:#1b5145}.auth-form .auth-submit:focus-visible{outline:2px solid var(--auth-accent);outline-offset:3px}.auth-form .auth-submit:disabled{color:#626d75;opacity:1;cursor:wait;background:#e5e9ec}.auth-error{color:var(--auth-danger);overflow-wrap:anywhere;background:#fcf1ee;border-radius:6px;align-items:flex-start;gap:8px;margin:0;padding:10px 12px;font-size:13px;line-height:20px;display:flex}.auth-error .lucide{margin-top:2px}.auth-help{text-align:center;color:var(--auth-muted);margin:0;font-size:13px;line-height:20px}.auth-icp-footer{text-align:center;flex:none;margin-top:24px;font-size:12px;line-height:20px}.auth-icp-footer a{color:#545d66;padding:4px 6px;text-decoration:none;display:inline-block}.auth-icp-footer a:hover{color:var(--auth-accent);text-decoration:underline}.auth-icp-footer a:focus-visible{outline:2px solid var(--auth-accent);outline-offset:3px;border-radius:2px}@media (max-width:520px){.auth-page{padding:24px 20px}.auth-page .auth-card{padding:28px 24px}.auth-brand{margin-bottom:28px}}@media (prefers-reduced-motion:reduce){.auth-form input,.auth-form button{transition:none!important}}
