.auth-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-6);border-bottom:1px solid var(--glass-border);padding-bottom:var(--space-4)}.auth-tab{flex:1;padding:var(--space-3) var(--space-4);background:transparent;border:none;border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);cursor:pointer;transition:all var(--duration-fast)}.auth-tab:hover{color:var(--color-text-primary);background:var(--glass-bg-light)}.auth-tab--active{color:var(--color-text-inverse);background:var(--color-accent-500)}.auth-form{display:none}.auth-form--active{display:block}.auth-form__group{margin-bottom:var(--space-5);padding-top:var(--space-2)}.auth-form__label{display:block;font-size:var(--text-small);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.auth-form__input{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text-primary);transition:border-color var(--duration-fast)}.auth-form__input:focus{outline:none;border-color:var(--color-accent-500)}.auth-form__input::placeholder{color:var(--color-text-faint);font-size:var(--text-small);font-style:italic}.auth-form__error{display:none;margin-top:var(--space-2);font-size:var(--text-xs);font-style:italic;color:var(--color-error)}.auth-form__error--visible{display:block}.auth-form__input--error{border-color:var(--color-error)!important}.auth-form__input--error:focus{border-color:var(--color-error)!important;box-shadow:0 0 0 2px #de3b3d33}.auth-form__submit{width:100%;margin-top:var(--space-2)}.auth-form__footer{margin-top:var(--space-6);text-align:center;font-size:var(--text-small);color:var(--color-text-muted)}.auth-form__footer a{color:var(--color-accent-400);text-decoration:none}.auth-form__footer a:hover{text-decoration:underline}.auth-form--loading .auth-form__input,.auth-form--loading .auth-form__submit{opacity:.6;pointer-events:none}
