.auth-page{flex-direction:column;min-height:calc(100vh - 170px);display:flex;align-items:center;justify-content:center;padding:32px 16px;box-sizing:border-box}.auth-reason{margin:0 auto 12px;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--accent) 6%,var(--card));border:1px solid var(--stroke);font-size:13px;line-height:1.4;color:var(--fg)}.auth-card{background:var(--card);border-radius:20px;padding:24px 22px 20px;box-sizing:border-box}.auth-reason,.auth-card{width:380px;box-sizing:border-box}.auth-card h2{margin:0 0 20px;text-align:center}.auth-form{display:flex;flex-direction:column;gap:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.auth-field{position:relative;display:flex;align-items:center;border-radius:999px;border:1px solid var(--stroke);background:var(--bg);padding:0 16px 0 44px;height:48px;box-sizing:border-box;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.auth-field:focus-within{border-color:var(--accent)}.auth-field-icon{position:absolute;left:16px;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;opacity:.75}.auth-field-icon svg{width:18px;height:18px;fill:var(--muted)}.auth-field input{border:none;outline:none;background:transparent;color:var(--fg);font-size:14px;width:100%}.auth-field input::placeholder{color:var(--fg)}.auth-field--with-toggle{position:relative}.auth-field--with-toggle input{padding-right:72px}.auth-field input:-webkit-autofill,.auth-field input:-webkit-autofill:hover,.auth-field input:-webkit-autofill:focus,.auth-field textarea:-webkit-autofill,.auth-field select:-webkit-autofill{-webkit-text-fill-color:var(--fg);caret-color:var(--fg);transition:background-color 9999s ease-out 0s}.auth-btn-primary{margin-top:8px;width:100%;border:none;border-radius:999px;height:48px;font-size:15px;font-weight:600;cursor:pointer;background:linear-gradient(135deg,var(--accent),var(--accent-soft));color:#fff;transition:transform .12s ease,box-shadow .16s ease,filter .12s ease}.auth-btn-primary:hover{filter:brightness(1.05);transform:translateY(-1px)}.auth-btn-primary:active{transform:translateY(0);box-shadow:0 12px 28px rgba(0,0,0,.75)}.auth-switch{margin-top:12px;text-align:center;font-size:13px;color:var(--muted)}.auth-card a{color:var(--accent);text-decoration:none;font-weight:500}.auth-card a:hover{text-decoration:underline}.auth-forgot{margin:-6px 0 0 0;text-align:center;font-size:13px}.auth-info strong{display:block;padding-bottom:10px}.auth-info a{color:var(--accent);font-weight:500;text-decoration:none}.auth-info a:hover{text-decoration:underline}.pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--stroke);background:transparent;color:var(--muted);border-radius:999px;cursor:pointer}.pw-toggle:hover{color:var(--fg);border-color:color-mix(in srgb,var(--accent) 40%,var(--stroke))}.pw-toggle-ic{width:18px;height:18px;display:block}.auth-field--with-toggle input{padding-right:56px}.auth-field.touched.is-invalid{border-color:#ef4444}.auth-field.touched.is-valid{border-color:#22c55e}.auth-field.pw-weak{border-color:#ef4444}.auth-field.pw-mid{border-color:#3b82f6}.auth-field.pw-strong{border-color:#22c55e}.pw-help{margin:-2px 0 6px 10px;font-size:12px;color:var(--muted);line-height:1.3}.pw-help:empty{display:none}@media(max-width:600px){.auth-page{padding:16px 10px}.auth-card{padding:20px 18px 18px;border-radius:18px}}.field-validation-error{padding:0 10px 0 10px;color:var(--error)}.validation-summary-errors{padding:0 10px 0 10px;color:var(--error)}.validation-summary-errors ul{list-style:none;padding:0}.grecaptcha-badge{margin-bottom:75px}