.auth-page-header{display:flex;flex-direction:column;gap:8px}.auth-page-title{font-family:var(--font-heading);font-size:28px;font-weight:700;letter-spacing:-.03em;color:var(--color-text-primary);margin:0;line-height:1.05}.auth-page-subtitle{font-size:15px;color:var(--color-text-muted);margin:0}.auth-form{display:flex;flex-direction:column;gap:20px;width:100%}.auth-form-group{display:flex;flex-direction:column;gap:6px}.auth-form-label{font-size:13px;font-weight:500;color:var(--color-text-secondary);letter-spacing:.01em}.auth-form-input{width:100%;padding:11px 14px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:var(--font-body);font-size:16px;line-height:1.5;outline:none;transition:border-color var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) var(--ease-out-expo)}.auth-form-input::placeholder{color:var(--color-text-muted)}.auth-form-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 10%,transparent)}.auth-form-input.has-error{border-color:var(--color-accent-red);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent-red) 10%,transparent)}.auth-password-wrapper{position:relative;display:flex}.auth-password-wrapper .auth-form-input{padding-right:44px}.auth-password-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:none;border:none;border-radius:6px;color:var(--color-text-muted);cursor:pointer;transition:color var(--duration-fast) var(--ease-out-expo),background var(--duration-fast) var(--ease-out-expo)}.auth-password-toggle:hover{color:var(--color-text-secondary);background:color-mix(in srgb,var(--color-text-muted) 8%,transparent)}.auth-password-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.auth-form-error{font-size:12px;color:var(--color-accent-red);line-height:1.4;overflow:hidden;max-height:0;opacity:0;transition:max-height var(--duration-fast) var(--ease-out-expo),opacity var(--duration-fast) var(--ease-out-expo)}.auth-form-error.visible{max-height:60px;opacity:1}.auth-global-error{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:color-mix(in srgb,var(--color-accent-red) 6%,transparent);border:1px solid color-mix(in srgb,var(--color-accent-red) 18%,transparent);border-radius:var(--radius-sm);font-size:13px;color:var(--color-accent-red);line-height:1.5;animation:auth-error-appear .3s var(--ease-out-expo)}.auth-global-error svg{flex-shrink:0;margin-top:1px}@keyframes auth-error-appear{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.auth-name-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-oauth-section{display:flex;flex-direction:column;gap:10px}.auth-oauth-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:11px 16px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer;text-decoration:none;transition:all var(--duration-fast) var(--ease-out-expo)}.auth-oauth-btn:hover{background:var(--color-bg-elevated);border-color:var(--color-border-hover);transform:translateY(-1px)}.auth-oauth-btn:active{transform:translateY(0)}.auth-oauth-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.auth-oauth-btn svg{flex-shrink:0}.auth-divider{display:flex;align-items:center;gap:14px}.auth-divider-line{flex:1;height:1px;background:var(--color-border)}.auth-divider-text{font-size:12px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:500;user-select:none}.auth-terms-row{display:flex;align-items:flex-start;gap:10px;cursor:pointer;user-select:none}.auth-terms-checkbox{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;border-radius:4px;border:1.5px solid var(--color-border);background:var(--color-bg-elevated);cursor:pointer;margin-top:1px;transition:background var(--duration-fast) var(--ease-out-expo),border-color var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) var(--ease-out-expo)}.auth-terms-checkbox:hover{border-color:var(--color-accent)}.auth-terms-checkbox:checked{background:var(--color-accent);border-color:var(--color-accent);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.5 7l2.5 2.5L10.5 5' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-size:14px;background-position:center;background-repeat:no-repeat}.auth-terms-checkbox:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 15%,transparent)}.auth-terms-label{font-size:13px;color:var(--color-text-muted);line-height:1.5}.auth-terms-label a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--color-accent) 40%,transparent);transition:text-decoration-color var(--duration-fast) var(--ease-out-expo)}.auth-terms-label a:hover{text-decoration-color:var(--color-accent)}.auth-submit-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px 24px;background:var(--color-accent);color:var(--color-accent-contrast);font-family:var(--font-body);font-weight:600;font-size:15px;letter-spacing:-.01em;border:none;border-radius:var(--radius-sm);cursor:pointer;position:relative;overflow:hidden;transition:all var(--duration-normal) var(--ease-magnetic)}.auth-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px color-mix(in srgb,var(--color-accent) 25%,transparent);filter:brightness(1.08)}.auth-submit-btn:active:not(:disabled){transform:translateY(0);filter:brightness(.95)}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;filter:none;box-shadow:none}.auth-spinner{width:18px;height:18px;border:2px solid color-mix(in srgb,currentColor 25%,transparent);border-top-color:currentColor;border-radius:50%;animation:auth-spin .6s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-forgot-row{display:flex;justify-content:flex-end;margin-top:-8px}.auth-forgot-link{font-size:13px;color:var(--color-accent);text-decoration:none;font-weight:500;transition:color var(--duration-fast) var(--ease-out-expo)}.auth-forgot-link:hover{text-decoration:underline}.auth-verify-header{text-align:center;margin-bottom:4px}.auth-verify-title{font-family:var(--font-heading);font-size:22px;font-weight:700;letter-spacing:-.03em;color:var(--color-text-primary);margin:0 0 8px}.auth-verify-subtitle{font-size:14px;color:var(--color-text-muted);margin:0;line-height:1.5}.auth-verify-subtitle strong{color:var(--color-text-secondary);font-weight:600}.auth-otp-container{display:flex;justify-content:center;gap:8px}.auth-otp-input{width:46px;height:52px;text-align:center;font-family:var(--font-mono);font-size:20px;font-weight:600;color:var(--color-text-primary);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);outline:none;caret-color:var(--color-accent);transition:border-color var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) var(--ease-out-expo)}.auth-otp-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 10%,transparent)}.auth-otp-input.has-error{border-color:var(--color-accent-red);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent-red) 10%,transparent)}.auth-resend-row{display:flex;justify-content:center;gap:6px;font-size:13px;color:var(--color-text-muted)}.auth-resend-btn{background:none;border:none;padding:0;color:var(--color-accent);font-size:13px;font-weight:500;cursor:pointer;font-family:var(--font-body)}.auth-resend-btn:hover{text-decoration:underline}.auth-resend-btn:disabled{color:var(--color-text-muted);cursor:not-allowed;text-decoration:none}.auth-back-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--duration-fast) var(--ease-out-expo)}.auth-back-btn:hover{background:var(--color-bg-elevated);border-color:var(--color-border-hover);color:var(--color-text-primary)}.auth-loading{display:flex;flex-direction:column;gap:16px;padding:8px 0}.auth-loading-bar{height:44px;border-radius:var(--radius-sm);background:var(--color-bg-surface);animation:auth-shimmer 1.5s ease infinite;background-size:200% 100%;background-image:linear-gradient(90deg,var(--color-bg-surface) 0%,var(--color-bg-elevated) 50%,var(--color-bg-surface) 100%)}.auth-loading-bar:nth-child(2){animation-delay:.1s}.auth-loading-bar:nth-child(3){animation-delay:.2s}.auth-loading-bar:nth-child(4){width:60%;animation-delay:.3s}@keyframes auth-shimmer{0%{background-position:200% center}to{background-position:-200% center}}.account-form{gap:16px}.account-form .auth-submit-btn{align-self:flex-end;width:auto;padding:10px 24px;font-size:14px}.account-success{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:color-mix(in srgb,var(--color-success, #22c55e) 6%,transparent);border:1px solid color-mix(in srgb,var(--color-success, #22c55e) 18%,transparent);border-radius:var(--radius-sm);font-size:13px;color:var(--color-success, #22c55e);line-height:1.5;animation:auth-error-appear .3s var(--ease-out-expo)}.account-success svg{flex-shrink:0;margin-top:1px}.connected-accounts{display:flex;flex-direction:column;gap:2px}.connected-account-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease-out-expo)}.connected-account-row:hover{background:var(--color-bg-elevated)}.connected-account-info{display:flex;align-items:center;gap:12px;min-width:0}.connected-account-info svg{flex-shrink:0;color:var(--color-text-muted)}.connected-account-details{display:flex;flex-direction:column;gap:1px;min-width:0}.connected-account-label{font-size:13px;font-weight:500;color:var(--color-text-primary)}.connected-account-value{font-size:12px;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.connected-account-badge{font-size:11px;font-weight:600;color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,transparent);padding:3px 8px;border-radius:999px;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}.connected-account-action{flex-shrink:0;padding:6px 14px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:12px;font-weight:500;cursor:pointer;transition:all var(--duration-fast) var(--ease-out-expo)}.connected-account-action--connect{background:var(--color-bg-elevated);border:1px solid var(--color-border);color:var(--color-text-secondary)}.connected-account-action--connect:hover{border-color:var(--color-accent);color:var(--color-accent)}.connected-account-action--disconnect{background:none;border:1px solid var(--color-border);color:var(--color-text-muted)}.connected-account-action--disconnect:hover{border-color:var(--color-accent-red);color:var(--color-accent-red)}.connected-account-action:disabled{opacity:.5;cursor:not-allowed}.connected-account-action .auth-spinner{width:14px;height:14px;border-width:1.5px}.personal-info-form{display:flex;flex-direction:column;gap:24px}.personal-info-avatar{display:flex;align-items:center;gap:20px}.personal-info-avatar-preview{width:72px;height:72px;border-radius:50%;background:var(--color-bg-elevated);border:2px solid var(--color-border);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;position:relative}.personal-info-avatar-img{width:100%;height:100%;object-fit:cover}.personal-info-avatar-initials{font-family:var(--font-heading);font-size:22px;font-weight:700;color:var(--color-text-muted);letter-spacing:-.02em}.personal-info-avatar-spinner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-bg-primary) 70%,transparent);border-radius:50%}.personal-info-avatar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.personal-info-avatar-upload{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text-secondary);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--duration-fast) var(--ease-out-expo)}.personal-info-avatar-upload:hover{border-color:var(--color-accent);color:var(--color-accent)}.personal-info-avatar-remove{padding:6px 10px;border:none;border-radius:var(--radius-sm);background:none;color:var(--color-text-muted);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;transition:color var(--duration-fast) var(--ease-out-expo)}.personal-info-avatar-remove:hover{color:var(--color-accent-red)}.personal-info-avatar-remove:disabled{opacity:.5;cursor:not-allowed}.personal-info-avatar-hint{font-size:12px;color:var(--color-text-muted);width:100%}.personal-info-fields{display:flex;flex-direction:column;gap:16px}.personal-info-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--color-border) 50%,transparent)}.personal-info-footer .auth-submit-btn{align-self:flex-start;width:auto;padding:10px 24px;font-size:14px}.change-email-idle{display:flex;align-items:center;gap:10px}.change-email-current{padding:11px 14px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:var(--font-body);font-size:16px;line-height:1.5;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.change-email-btn{flex-shrink:0;padding:8px 16px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text-secondary);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--duration-fast) var(--ease-out-expo)}.change-email-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.change-email-form{display:flex;flex-direction:column;gap:12px}.change-email-current-hint{font-size:12px;color:var(--color-text-muted);margin-bottom:-4px}.change-email-verify-hint{font-size:14px;color:var(--color-text-secondary);margin:0;line-height:1.5}.change-email-verify-hint strong{color:var(--color-text-primary);font-weight:600}.change-email-actions{display:flex;gap:8px}.change-email-cancel{width:auto;padding:8px 16px;font-size:13px}.change-email-submit{width:auto;padding:8px 20px;font-size:13px}@media(max-width:480px){.auth-name-row{grid-template-columns:1fr}.auth-otp-input{width:40px;height:46px;font-size:18px}.personal-info-avatar{flex-direction:column;align-items:flex-start}}.delete-modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-bg-primary) 80%,transparent);backdrop-filter:blur(4px);animation:delete-modal-fade-in .2s var(--ease-out-expo)}@keyframes delete-modal-fade-in{0%{opacity:0}to{opacity:1}}.delete-modal{width:100%;max-width:440px;margin:16px;padding:28px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;gap:20px;animation:delete-modal-slide-in .25s var(--ease-out-expo)}@keyframes delete-modal-slide-in{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.delete-modal-header{display:flex;align-items:center;gap:10px}.delete-modal-icon{color:var(--color-accent-red);flex-shrink:0}.delete-modal-title{font-size:18px;font-weight:700;color:var(--color-text-primary);margin:0;letter-spacing:-.02em}.delete-modal-text{font-size:14px;color:var(--color-text-secondary);line-height:1.6;margin:0}.delete-modal-text strong{color:var(--color-accent-red);font-weight:600}.delete-modal-confirm{display:flex;flex-direction:column;gap:8px}.delete-modal-label{font-size:13px;color:var(--color-text-muted)}.delete-modal-label strong{color:var(--color-text-secondary);font-weight:600;user-select:none}.delete-modal-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.delete-modal-cancel{padding:9px 20px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--duration-fast) var(--ease-out-expo)}.delete-modal-cancel:hover{background:var(--color-bg-elevated);border-color:var(--color-border-hover);color:var(--color-text-primary)}.delete-modal-delete{display:flex;align-items:center;justify-content:center;gap:8px;padding:9px 20px;border-radius:var(--radius-sm);border:none;background:var(--color-accent-red);color:#fff;font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer;transition:all var(--duration-fast) var(--ease-out-expo)}.delete-modal-delete:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 4px 16px color-mix(in srgb,var(--color-accent-red) 25%,transparent)}.delete-modal-delete:disabled{opacity:.4;cursor:not-allowed;filter:none;box-shadow:none}.delete-modal-delete .auth-spinner{width:16px;height:16px;border-width:2px}
